为什么51中断定时器模式2我设置180us定时器不准确?,程序如下,keil测试过,和实物测试结果一样。
#include<reg52.h>
sbit out=P2^3;
void Timer0_Init()
{ TMOD=0x02;IE=0x82;//模式2
TH0=0x00;
TL0=0x5a;//11.0592定时180us
TR0=1;}
void Timer0_Int() interrupt 1
{ out=~out;}
void main()
{ Timer0_Init();
while(1);}
,改TH0=0x5a正常了,但是还是误差1us,89系列龟速单片机,11.0592M的情况下,执行一条指令时间是大于1us的。建议你换成STC15W系列的。