智能车制作
标题:
帮忙看一下,我写的舵机程序,舵机是futaba s3010。
[打印本页]
作者:
我的名字是菜鸟
时间:
2013-5-25 21:40
标题:
帮忙看一下,我写的舵机程序,舵机是futaba s3010。
程序不能控制舵机,舵机不会转。求大神帮忙看一下哪里错了。
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint a,b,c;
/*a为舵机1的脉冲宽度,b是角度*/
/*c为中间变量*/
sbit p12=P1^2;
/*以下为定时器中断函数*/
void timer0(void) interrupt 1 using 1
{
p12=0;
c=2120-c; /*2120代表一个周期的时间*/
TH0=(65536-c)/256; TL0=(65536-c)%256; /*重新定义计数初值*/
}
/*主程序*/
void main(void)
{
TMOD=0x11; /*设初值*/
p12=1;
b=20;
a=(920+10*b); /*角度与脉宽函数关系*/
c=a;
TH0=(65536-a)/256; TL0=(65536-a)%256; /*设定定时器初始计数值*/
EA=1;
ET0=1; TR0=1;
}
作者:
穆旦阿斗
时间:
2013-5-26 12:22
在主函数内初始化完后加一个死循环while(1){} PWM的产生就在这个while和定时器中断里面就行了
作者:
740513326
时间:
2013-12-10 10:16
:)
作者:
张世民
时间:
2014-4-5 16:26
牛皮 哈哈哈哈 看看 学习学习
作者:
逍遥龙III
时间:
2014-4-8 22:33
在主程序里为什么没有死循环???
作者:
bzd_111
时间:
2014-11-24 19:31
:D:D
作者:
bzd_111
时间:
2014-11-24 19:31
:):):)
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2