你掉到while死胡同里去了!我写一段你直接烧进去你看看闪不闪啊
#include<reg52.h> #define uchar unsigned char sbit p1_1=P1^0 ; sbit p2_1=P1^1; uchar a ; void main() { TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; a=0; while(1) { if(a==20) { p1_1=~p1_1; p2_1=~p2_1; a=0; } } } void timer0() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; a++; }
你的我没改,直接把while的位置调整了一下,我没试,你下下来试试看。你这个活着直接把LED的判断语句直接放在中断里面也可以,main放初始化活着干脆空着。还有就是干脆把while删掉也可以试试看 |