单片机的P34、P35、P36、P37口分别接发光二极管LED1、LED2、LED3、LED4,输出低电平点亮LED,读下列程序:#include<;reg51.h>;unsigned 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后清零,重新计数。
A: 由四个LED灯组成的0-15的自动加法计数器;
B: 定时500ms后加1;
C: 定时1s后加1;
D: 计数器加到15后清零,重新计数。
A,B,D
本题目来自[网课答案]本页地址:https://www.wkda.cn/ask/pjoeyamaaxzemxo.html
举一反三
- 单片机的P2^0、2^1口分别接发光二极管LED1、LED2,读下列程序:#include<;reg51.h>;sbitLED1=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;}}程序运行结果:
- 单片机的P34、P35、P36、P37口分别接LED1、LED2、LED3、LED4,输出低电平点亮LED灯, P32口接按键K1,按键按下时单片机输入低电平,程序如下:#include<;reg51.h>;sbit key = P3^2;unsigned char a ;unsigned char count = 15;void delay(int i){while(i)i--;}void main(){IT0=1;EX0=1;EA =1;while(1);}void int0() interrupt 0{count--;while(!key);if( count<;0)count = 15;a = count;a = ~a;a = a<;<;4|0x0f;P3 = a; A: 采用外部中断的方式实现一个二进制减1计数器; B: 用4个LED显示计数结果,减至0后,重新从15开始计数; C: 采用按键扫描的方式实现一个二进制减1计数器; D: 外部中断为低电平触发方式。
- 下列程序的输出结果是() num = 27 count = 0 while num > 0: if num % 2 == 0: num /=2 elif num % 3 ==0: num /= 3 else: num -=1 count += 1 print (count)
- 单片机的P34、P35、P36、P37口分别接LED1、LED2、LED3、LED4,输出低电平点亮LED灯,P20、P21口分别接按键K1、K2,按键按下时输入低电平至单片机,程序如下: #include sbitK1=P2^0; sbitK2=P2^1; voidmain() { while(1) { if((K2==0)&&(K1==1)) P3=0x3f; elseif((K2==1)&&(K1==0)) P3=0xcf; elseif((K2==1)&&(K1==1)) P3=0x0f; } }
- 第一个LED灯点亮的程序是 A: LED=1; B: LED=0; C: LED1=1; D: LED1=0;
内容
- 0
T0采用方式(),()模式,T1采用方式(),()模式。 A: 1、定时、0、计数 B: 0、定时、1、计数 C: 1、计数、0、定时 D: 0、计数、1、定时
- 1
P0.0所控制LED被命名为LED。下面程序片段中()可以使LED闪烁两次。A.()LED=0;delay();()B.()LED=0;delay();LED=1;delay();()C.()LED=0;delay();LED=1;delay();()LED=0;delay();LED=1;delay();()D.()LED=0;delay()()LED=1;delay();()LED=0;delay()()LED=1;delay();
- 2
简易LED时钟程序例程中,定时器0用于走时,定时器1用于LED动态显示,那么定时器0和定时器1哪个定时更短? A: 定时器1 B: 定时器0
- 3
若系统晶振频率为6MH,分析下列源程序,回答问题。 #include sbit LED=P1^0; void main() { TMOD=0x01; TL0=0x83; TH0=0xFF; IE=0x82 TR0=1; while(1); } void TIME0() interrupt 1 { TL0=0x83; TH0=0xFF; LED=∽LED; } (1) 程序中采用的T0还是T1定时器?选择的几位计数器? (2) 定时器定时的时间是多少? (3) 程序完成的功能
- 4
以下程序段的输出结果是 。 int main(void) { int num = 0,s = 0; while(num <= 2){ num++; s += num; } printf("%d\n",s); return 0; }