单片机原理及应用B答案_第1页
单片机原理及应用B答案_第2页
单片机原理及应用B答案_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《单片机原理及应用》模拟卷21、分析程序的执行结果,将结果填写到空格中。ORGMOVMOV0000H30H,#50HR0,#30HMOVA,@R0;(A=50H)MOVA,#79HMOVB,#20H;(A=79HB=20H)DIVAB;(A=03HB=19H)PUSHBMOVB,#0AHMULAB;(A=1EHB=00H)POPBADDA,B;(A=37HB=19H)MOV30H,A;(30H单元的内容=37H)LOOP:AJMPLOOP2MCS51RAM50H~55H1216ASCII2800HRAM中。解:ORG 0000HLJMP MAINMAIN:MOV MOV MOV R0,#06TOP:MOV A,@DPTRPUSH ACCANL A,#0FH ;取出四位二进制数PUSH ACCCLR SUBB A,#0AHPOP ACC ;弹回A中JC LOOP ;该数〈10去ADDA,#07H07HLOOP:ADDA,#30H;加30HMOVR2,APOPACCANL #0F0H ;取出下一个四位二进制数PUSH ACCCLR SUBB A,#0AHPOP ACC ;弹回A中JC LOOP ;该数〈10去SWAPAORLA,R2MOVX@R1,AINCDPTRINCR1DECSWAPAORLA,R2MOVX@R1,AINCDPTRINCR1DECR0JNZTOP;将结果存到RAM中;判断转换完没有,未转换完则转TOP38031T0定时/P1.050ms100个方波后停止输出。#include<reg51.h>#defineucharunsignedcharuchara;voidmain(void){TMOD=0X01;TL0=0XB0;TH0=0X3C;EA=1;ET0=1;TR0=1;while(1){if(a==100){EA=0;TR0=0;}}}voidtimer0(void)interrupt1{TL0=0XB0;TH0=0X3C;cplp1.0;a++;}41RAM30H~37HASCII编制甲机发送和乙机接收的程序(加奇校验。A机发送程序设计ST:MOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVSCON,#50HMOVR0,#30HMOVR1,#08HLOOP:MOVA,@R0CALLFSINCR0DJNZR1,LOOPRETFS:MOVCPLCMOVMOVSBUFAWAIT:JNBTI,WAITCLRTIRETB机的接受程序设计接受串口发来的程序,假设存放在30H—37H中ST:MOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVSCON,#50HMOVR0,#30HMOVR1,#08HLOOP:CALLJSJNCERRORMOV@R0,AINCR0DJNZR1,LOOPRET ERROR:………;RETJS:JNBRIJSCLRRIMOVA,MOVPCANLA,#7FHRET580318A/D(ADC0809)20ms030HRAM(提示:需要用定时器和外部中断。MAIN:MOVTMOD,#01H//0初始化MOVTL0,#10HMOVTH0,#27HMOVR0,#30HSETBTR0SETBET0SETBEX0SETBEASJMP$0中断服务子程序:ORG000BHMOVDPTR,#7EF8H//ADCIN0通//AD转换CLRTR0MOVMOVSETBTR0RETI外部中断(INT0)子程序:ORG0003HMOVXA,@DPTRMOV@R0,AINCR0RETIKEY1:ACALLKS1;调用判断有无键按下子程序JNZLK1AJMPKEY1LK1:ACALLTM12s12ms延时子程序ACALLKS1JNZLK2AJMPKEY1LK2MOVR2,#0FEHMOVR4,#00HR4LK4:MOVDPTR,#0FD01H;列扫描字送8155PA口MOVMOVXINCDPTR8155PC口INCDPTRMOVXA,@DPTRJBACC.0,LONE;第0行无键按下,查第1行MOVA,#00H;有键按下,该行首键号送AAJMPLKPLONE:JBACC.1,NEXTMOVA,#08HLKP:ADDA,R4;键号=行键号+列号PUSHACCLK3:ACALLKS1;等待键释放JNZLK3POPACCRETNEXT:INCR4MOV8列是否全扫描完JNBRLA;求得下一列的扫描字MOVR2,AAJMPLK4KND:AJMPKEY1KS1MOVDPTR,#0FD01HPA口MOVA,#00H;全扫描字MOVX@DPTR,AINCDPTRPB口INCDPTRMOVXA,@DPTRCPLANLA,#03H;屏蔽高6位RETTM12msMOVR7,#18H12ms子程序TM:MOVR6,#0FFHTM6:DJNZR6,TM6DJNZR7,TMRETLED显示子程序:MOVR0,#30HMOVR3,#02H00000010BLDMOVPA口MOVDPTR,#0FD01HMOVX@DPTR,AINCDPTRB口地址MOVA,@R0;加偏移值,得到相应的显示代码ADDA,#0DHMOVCA,@A+PCMOVX@DPTR,AACALLLD11ms的子程序INCR0MOVA,R3;如果6个显示器都扫描一遍,返回主程序ADDA,#01H;使最高位是否为1判断扫描是完毕JBACC。7,LD1RLA;修改扫描行MOVR3,AAJMP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论