请大虾指点一下看我的初始化对吗!!仿真时好像波特率发生器没反映。 T2作波特率发生器。有时不进入中断,把T1的值改成ff后才响应中断。
我不知道这是为什么!!请高人指点!!郁闷!! main() { SP=0x50; EA=0;
while(1) {time_init();
//后面是显示程序
} }
void time_init(void) {
TMOD=0x1d;//T1 is timer,T0 is counter gata0=1 T2CON=0x30;//T2 work in baud rate TH0=0x00;TL0=0x00; TH1=0x4c;TL1=0x22;//50ms timed TH2=0xff;TL2=0x19;//0.25ms timed
TR0=1;TR1=1;TR2=1; ET1=1;PT1=1; EA=1;
} void time1(void) interrupt 3 using 1 { P1_1=~P1_1;//仿真观察口 TH1=0x4c;TL1=0x00; count--; if(count==0) { count=20;tff=1;
} TF1=0; } |