单片机定时产生脉冲串

2019-07-16 03:13发布

这是我编写的中断程序,从P2_6口产生一个脉冲串,但是偏差太大,那位帮忙看一下要改正那里,才能让偏差减小,谢了;
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
//#define zhuan 600   //如果在这里宏定义了,那么基本上可以消除一点偏差,但是如果不用宏定义,怎么改
sbit P2_6=P2^6;     
uint zhuan;
void main()
{  
EA=1;
ET0=1;
TR0=1;
TMOD=0X01;
TH0=(65536-200)/256;
TL0=(65536-200)%256;
while(1)
{
zhuan=600;
}
}
void xx() interrupt 1
{
TH0=(65536-30000/zhuan)/256;
TL0=(65536-30000/zhuan)%256;
P2_6=~P2_6;
}
PCB加工找华强电路 http://www.hqpcb.com 样板2天出货

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。