在keil中调试程序,89c52在未启动T2定时器时,TL2和TH2的值竟...
时间:10-02
整理:3721RD
点击:
在keil中调试程序,89c52在未启动T2定时器时,TL2和TH2的值竟然变化,这可能吗?用wave6000仿真时,TL2和TH2的值就不变化。
#include <REG52.h>
sbit led=P1^1;
unsigned int inter_time;
void main()
{
TR2=1;
ET2=1;
EA=0;
RCAP2H = -50000/256;
RCAP2L = -50000%256;
TH2= -50000/256;
TL2= -50000%256;
for(;;);
}
void C52_T2() interrupt 5
{
TF2=0;
inter_time++;
if(inter_time==10)
{
led=~led;
inter_time=0;
}
}
#include <REG52.h>
sbit led=P1^1;
unsigned int inter_time;
void main()
{
TR2=1;
ET2=1;
EA=0;
RCAP2H = -50000/256;
RCAP2L = -50000%256;
TH2= -50000/256;
TL2= -50000%256;
for(;;);
}
void C52_T2() interrupt 5
{
TF2=0;
inter_time++;
if(inter_time==10)
{
led=~led;
inter_time=0;
}
}
高手能解释一下吗?
怎么看待这种现象?keil要怎样设置才能避免这种情况?期待高手快出现。
自己去翻一下89C52的资料,看看TR2,EA标志位的说明吧
谢谢小编上传学习资料、