1、P64:第:第17题习题参考答案题习题参考答案 MOVDPTR,#1000H MOVR2,#100 MOVR6,#00H MOVR7,#00HLOOP:MOVX A,DPTR CLRC ADDA,R6 MOVR6,A JNCLOOP1 ;C=0跳跳 INCR7LOOP1:INCDPTR DJNZR2,LOOP SJMP$MOVA,#00HADDCA,R7MOVR7,AMOVA,R7ADDCA,#00HMOVR7,AMOVDPTR,#2000HMOVR7,#100MOVR2,#00HLOOP2:MOVXA,DPTRCJNEA,#00H,LOOP1;不等跳不等跳INCR2LOOP1:INCDPTR
2、DJNZR7,LOOP2SJMP$P64:第:第21题习题参考答案题习题参考答案JNZLOOP1P109:第(:第(4)题参考答案)题参考答案#includeextern serial_initial();main()int a,b;unsigned int x,y;serial_initial();a=b=0 xaa55;x=y=0 xaa55;printf(“n a=%4x b=%4x x=%4x y=%4x”,a,b,x,y);a=a1;x=a1;printf(“n a=%4x b=%4x x=%4x y=%4x”,a,b,x,y);printf(“n”);printf(“n”);pri
3、ntf(“That is all.n”);while(1);程序执行结果:程序执行结果:(空(空1行)行)_a=aa55 b=aa55 x=aa55 y=aa55_a=54aa b=552a x=54aa y=552a(空(空1行)行)That is all.P110:第:第12题参考答案题参考答案#include#includevoid mainint x;SCON=0 x52;TMOD=0 x20;TH1=0 xF3;TR1=1;printf(please input:n);scanf(“%d”,&x);switch(x)case1:printf(“An”);break;case2:pri
4、ntf(“Bn”);break;case3:printf(“Cn”);break;case4:printf(“Dn”);break;case5:printf(“over!n”);break;default:printf(“error!please input again!n”);while(1);P110:第:第17题参考答案题参考答案#inclde#includeextern serial_initial();struct studentunsigned char number10;unsigned char name10;unsigned int(float)score;pl3;main(
5、)unsigned int i,max,t;serial_initial();printf(“please input 3 studend names and scores:n”);for(i=0;i3;i+)续第续第17题:题:printf(please input number:n”);scanf(“%d”,pli.number);printf(please input name:n”);scanf(“%s”,pli.name);printf(please input score:n”);scanf(“%d”,pli.score);max=pl0.score;for(i=1;imax)ma
6、x=pli.score;t=i;printf(name is 5s,max score is%d”,plt.name,plt.max);printf(“n”;)while(1);程序执行结果:程序执行结果:please input 3 studend names and scores:please input number:06929299please input name:zhangplease input score:90please input number:04929299please input name:wangplease input score:85 please input
7、number:05929299please input name:liplease input score:95name is li,max score is 95P151:第:第19题参考答案题参考答案19、8051系统中,已知振荡频率为系统中,已知振荡频率为12MHz,用定时,用定时/计数计数器器T1,实现从,实现从P1.1产生周期为产生周期为2s的方波。要求分别用汇的方波。要求分别用汇编语言和编语言和C语言编程。语言编程。解:根据题意,要求产生解:根据题意,要求产生1s=1000ms的周期性的定时,定的周期性的定时,定时到则对时到则对P1.1取反就可实现。由于定时时间较长,一个取反就可实
8、现。由于定时时间较长,一个定时定时/计数器不能直接实现,可用定时计数器不能直接实现,可用定时/计数器计数器T1产生周产生周期性为期性为10ms的定时,然后用一个寄存器的定时,然后用一个寄存器R2对对10ms计数计数100次或用定时次或用定时/计数器计数器T0对对10ms计数计数50次实现。系统次实现。系统时钟为时钟为12MHz,定时,定时/计数器计数器T1定时定时10ms,计数值,计数值N为为10000,只能选方式,只能选方式1,方式控制字为,方式控制字为00010000B(10H),初值),初值X:X=65536-10000=55536=1101100011110000B则则TH1=1101
9、1000B=D8H,TL1=11110000B=F0H。T1T02sT1定时定时10ms:N=10000,D8F0H,100次;次;T1定时定时20ms:N=20000,B1E0H,50次。次。程序:程序:(1)用寄存器)用寄存器R2作计数器软件计数,中断处理方式。作计数器软件计数,中断处理方式。汇编程序:汇编程序:ORG 0000HLJMP MAINORG 001BHLJMP INTT1ORG 0100HMAIN:MOV TMOD,#10HMOV TH1,#0D8HMOV TL1,#0F0HMOV R2,#00HSETB EASETB ET1SETB TR1SJMP$INTT1:MOV TH
10、1,#0D8HMOV TL1,#0F0HINC R2CJNE R2,#64H,NEXTCPL P1.1MOV R2,#00HNEXT:RETI ENDC语言程序:语言程序:#include /包含特殊功能寄存器库包含特殊功能寄存器库sbit P1_1=P11;char i;void main()TMOD=0 x10;TH1=0 xD8;TL1=0 xf0;EA=1;ET1=1;i=0;TR1=1;while(1);void time1_int(void)interrupt 3 /中断服务程序中断服务程序TH1=0 xD8;TL1=0 xf0;i+;if(i=100)P1_1=!P1_1;i=0
11、;P151:第:第21题参考答案题参考答案21、用、用8051单片机的串行口扩展并行单片机的串行口扩展并行I/O接口,控制接口,控制16个个发光二极管依次发光,画出电路图,用汇编语言和发光二极管依次发光,画出电路图,用汇编语言和C语语言分别编写相应程序。言分别编写相应程序。从左到右点亮从左到右点亮16个发光二极管。个发光二极管。8051 RXD TXD P1.0 DATA CLK STB DATA CLK STBQ0Q7Q0Q774LS16474LS164程序:程序:汇编程序:汇编程序:ORG 0000HLJMP MAINORG 0100HMAIN:MOV SCON,#00HMOV A,#01
12、HMOV R4,#00HCLR P1.0CLR C START:MOV SBUF,ALOOP:JNB TI,LOOP CLR TIMOV R5,AMOV A,R4MOV SBUF,ALOOP3:JNB TI,LOOP3 CLR TIMOV R4,A SETB P1.0ACALL DELAYMOV A,R5RLC AMOV R5,AMOV A,R4RLC A MOV R4,AMOV A,R5CLR P1.0SJMP STARTDELAY:MOV R7,#05HLOOP2:MOV R6,#0FFHLOOP1:DJNZ R6,LOOP1 DJNZ R7,LOOP2 RET END设串行口采用查询方式
13、,显示的延时依靠调用延时子程序来实现。设串行口采用查询方式,显示的延时依靠调用延时子程序来实现。程序如下:程序如下:C语言程序:语言程序:#include /包含特殊功能寄存器库包含特殊功能寄存器库sbit P1_0=P10;void main()SCON=0 x00;unsigned char i,j;unsigned int a=0 x0001;/16个发光二极管从左开始点亮个发光二极管从左开始点亮for(i=0;i8);/高高8位移至低位移至低8位位TI=0;SBUF=j;while(!TI);P1_0=1;for(i=0;i=254;i+);/延时延时a=1;/左移左移1位位P168:
14、第:第7题题2764(1):C000HDFFFH(P2.5=0)2764(2):A000HBFFFH(P2.6=0)2764(3):6000H 7FFFH(P2.7=0)P2.6P2.6P2.5P2.5P2.4P2.4P2.0P2.0ALEALE80318031PSENPSENEAEAP2.7P2.774LS74LS373373OEOEA0A0A7A7A8A8A12A12CECED0D0D7D7OEOE2764(1)2764(1)A0A0A7A7A8A12CECE2764(2)2764(2)OEOEP0P0888 88 85 58 88 85 5D0D0D7D7G8D0D0D7D7OEOE27
15、64(3)2764(3)A0A0A7A7A8A8A12A12CECE85P168:第:第8题题6264(1):0000H1FFFH6264(2):2000H3FFFH6264(3):4000H5FFFHP2.6P2.6P2.5P2.5P2.4P2.4P2.0P2.0ALEALE80318031EAEAGP2.7P2.774LS74LS373373OEOEA0A0A7A7A8A8A12A12CECED0D0D7D7OEOE6264(1)6264(1)A0A0A7A7A8A8A12A12CECE6264(2)6264(2)OEOEP0P0888 88 85 58 88 85 5CBAD0D0D7D7GG1G1G2AG2AG2BG2BY2Y2Y1Y1Y0Y08D0D0D7D7OEOE6264(3)6264(3)A0A0A7A7A8A8A12A12CECE85VccVcc74LS13874LS138RDRDWRWRWEWEWEWEWEWE
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922