关于51驱动舵机,有波形输出舵机却不转动

2020-01-17 19:11发布

我是用中断写的,11.0592的晶振,然后用示波器测试波形的时候发现伯茨那个正常,20MS一个周期,高电平时间为1ms,接下来是程序
#include <reg52.h>
unsigned int a,b;
sbit c=P0^0;         
void timer0 (void) interrupt 1
{
                c=!c;
                b=20000-b;
                TH0=-(b/256);
                TL0=-(b%256);
                if(b>=500&&b<=2500)
                b=a;
                else
                b=20000-a;
}

void main(void)
{
                TMOD |=0x01;               
                c=1;
                a=1500;
                b=a;
                TH0=-(a/256);              
                TL0=-(a%256);
                EA=1;        
                ET0=1;        
                TR0=1;      
                TR1=1;           
                PT0=1;           
                while(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
30条回答
小黑@电子
1楼-- · 2020-01-20 05:35
请教一下,在给定时器赋值的时候前面加-是什么意思
longwu537
2楼-- · 2020-01-20 06:51
 精彩回答 2  元偷偷看……
longwu537
3楼-- · 2020-01-20 09:43
小黑@电子 发表于 2014-4-28 14:35
请教一下,在给定时器赋值的时候前面加-是什么意思

赋值时添加“-”是利用了uint型数据最大为65536的特点,相当于65536-(b%256)的意思
小黑@电子
4楼-- · 2020-01-20 12:55
longwu537 发表于 2014-4-28 15:56
赋值时添加“-”是利用了uint型数据最大为65536的特点,相当于65536-(b%256)的意思 ...

受教了,多谢大神
点雨落山岚
5楼-- · 2020-01-20 18:47
这程序真心不好理解。
墨逸、
6楼-- · 2020-01-20 22:49
a752109494 发表于 2014-4-27 22:49
我的意思是同一个电源吗

是的,使用的同一个五伏电源

一周热门 更多>