题目内容

单片机的P34、P35、P36、P37口分别接LED1、LED2、LED3、LED4,输出低电平点亮LED灯, P32口接按键K1,按键按下时单片机输入低电平,程序如下:#include "reg51.h"unsigned char a;void main(){TMOD=0x01;TH0=0xee;TL0=0x00;EA=1;ET0=1;TR0=1;EX0=1;IT0=1;while(1);}void int0()interrupt 0{TR0=!TR0;}void t0( )interrupt 1{static unsigned char count=0,Bit=0;TH0=0xee;TL0=0x00;count++;if(count>=200){count=0;Bit++;if(Bit==16)Bit=0;a=Bit;a=~a;a=a<<4 |0x0f;P3=a;}}

A. 加1计数器,加至15后重新从0开始计数。
B. 按第一次按键停止计数。
C. 按第一次按键启动计数。
D. 按第2次按键启动计数。

查看答案
更多问题

单片机的P34、P35、P36、P37口分别接LED1、LED2、LED3、LED4,输出低电平点亮LED灯,P20接按键K1,按键按下时单片机输入低电平,程序如下:#includesbitK1=P2^0;bitflag=1;chari=0;voidmain(){TMOD|=0x01;TL0=0x00;//设置定时初值TH0=0xEE;//设置定时初值TR0=1;ET0=1;EA=1;while(1){if(K1==0)flag=~flag;P3=~(i<<4);if(i>=16)i=0;if(i<0)i=15;}}voidtimer0_()interrupt1{staticunsignedcharinir0=0;TL0=0x00;//设置定时初值TH0=0xEE;//设置定时初值if(++inir0>=200){inir0=0;if(flag)i++;elsei--;}}

A. 在无按键按下的情况下,初始界面为以4个LED组成计数范围为0-15的自动加法计数器。
B. 计数间隔为1秒。
C. K1按键的功能是在自动加法计数器与自动减法计数器之间进行切换。
D. K1按键的功能是改变计数间隔时间。

单片机的 P34、P35、P36、P37口分别接LED1、LED2、LED3、LED4, 输出低电平点亮LED灯,P20接按键K1,按键按下时单片机输入低电平,程序如下:#include#includesbit K1=P2^0;char j=0;void main(){TMOD|=0x01;TL0 = 0x00; //设置定时初值TH0 = 0xEE; //设置定时初值TR0=1;ET0=1;EA=1;P3=0xef;while(1){if(j>=4){j=0;P3=0xef;}}}void timer0_() interrupt 1{static unsigned char inir0=0;TL0 = 0x00;TH0 = 0xEE;if(++inir0>=200){inir0=0;j++;P3=_crol_(P3,1);}}

A. 执行P3=_crol_(P3,1);结果是点亮的LED灯左移1位。
B. 执行P3=_crol_(P3,1);结果是点亮的LED灯右移移1位。
C. 以4个LED组成的时间间隔为1s流水灯。
D. 以4个LED组成的时间间隔为0.5s流水灯。

单片机的P34、P35、P36、P37口分别接发光二极管LED1、LED2、LED3、LED4,输出低电平点亮LED,读下列程序:#includeunsigned char count=0,num=0;void main(){TMOD|=0x01; // @11.0592MHzTL0=0xCD; //设置定时初值 2msTH0=0xF8; //设置定时初值TR0=1;ET0=1;EA=1;while(1);}void timer0_ISR(void) interrupt 1{TL0=0xCD; //设置定时初值TH0=0xF8; //设置定时初值if(++count >= 250){count=0;P3=~(num << 4);num++;if( num >= 16 )num=0;}}

A. 由四个LED灯组成的0-15的自动加法计数器;
B. 定时500ms后加1;
C. 定时1s后加1;
D. 计数器加到15后清零,重新计数。

单片机的P2^0、2^1口分别接发光二极管LED1、LED2,读下列程序:#includesbitLED1=P2^0;sbitLED2=P2^1;unsignedcharCountor1=0,Countor2=0;voidmain(void){TMOD|=0x10;TL1 = 0x00;//设置定时初值 定时50msTH1 = 0x4C;//设置定时初值TR1=1;ET1=1;EA=1;while(1);}voidTime1(void)interrupt3{TL1 = 0x00;//设置定时初值 定时50msTH1 = 0x4C;//设置定时初值Countor1++;Countor2++;if(Countor1==2){LED1=~LED1;Countor1=0;}if(Countor2==8){LED2=~LED2;Countor2=0;}}程序运行结果:

答案查题题库