中级会员
- 积分
- 289
- 威望
- 238
- 贡献
- 45
- 兑换币
- 0
- 注册时间
- 2011-5-12
- 在线时间
- 3 小时
|
1贡献
我的舵机也是 程序通过示波器看没什么问题 就是20ms 占空比也没什么问题 下载进去就是不转 影响心情 我是按1, 1.5 ,2 ,1,5,1(ms) 轮流给的舵机占空比 可是就是不转啊
请高手帮忙 程序如下 急求
#include<stc12.h>
unsigned char i,pwm;
unsigned char table[5]={0xf3,0xdc,0xd6,0xdc,0xf3};//设置的占空比
void pwm_set(unsigned char a);
void intimer();
void initpwm();
void main()
{
initpwm();
intimer();
num=0;
pwm=0;
while(1)
{
if(i==40)//两秒循环一次
{
i=0;
pwm_set(table[pwm++]);
if(num==5)
num=0;
if(pwm==5)
pwm=0;
}
}
}
void initpwm()
{
CCON=0;
CL=0;
CH=0;
CMOD=0X04;
CCAPM0=0X42;
PCA_PWM0=0X00;
CCAP0H=0;
CCAP0L=0xd9;
CR=1;
}
void pwm_set(unsigned char a)
{
CCAP0H=a;
}
void intimer() //定时50ms
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TH0=(65536-156)/256;
TL0=(65536-156)%256;
TMOD=0x12;
AUXR=0x00;
ET0=1;
ET1=1;
TR1=1;
TR0=1;
EA=1;
}
void exter0() interrupt 1
{
TH0=(65536-156)/256;
TL0=(65536-156)%256;
// t0++;
}
void timer1() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
i++;
} |
|