山东大学微机原理试题.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:7 大小:62KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

山东大学微机原理试题.doc

山东大学微机原理试题.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

试卷11、分析程序的执行结果,将结果填写到空格中。(10分)ORG0000HMOV30H,#50HMOVR0,#30HMOVA,@R0;(A=)MOVA,#79HMOVB,#20H;(A=B=)DIVAB;(A=B=)PUSHBMOVB,#0AHMULAB;(A=B=)POPBADDA,B;(A=B=)MOV30H,A;(30H单元的内容=)LOOP:AJMPLOOP2、将MCS51内部RAM50H~55H单元存放的12个16进制数变为ASCII码,放到2800H单元开始的外部RAM中。(20分)3、编制四个十六进制单字节数相加后求平均的程序。(10分)4、用8031的T0定时/计数器,设计程序,实现在P1.0输出50ms的方波,输出100个方波后停止输出。(20分)5、甲单片机利用方式1将内部RAM30H~37H单元的ASCII码发送到乙机。编制甲机发送和乙机接收的程序(加奇校验)。(20分)6、利用8031和8位A/D(ADC0809)构成数据采集系统。每隔20ms采集通道0的一次数据,将采集的数据存放在30H的内部RAM中。画出原理示意图,写出较完整的程序清单。(提示:需要用定时器和外部中断)。(20分)7、【附加题】试用8031和8155实现键盘和LED动态显示。画出原理示意图并编制键盘扫描程序和LED动态显示程序(16个键的键盘扫描和6位LED显示)。答案11、ORG0000HMOV30H,#50HMOVR0,#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:AJMPLOOP2、ORG0000HLJMPMAINORG0100HMAIN:CLRCMOVR2,#00HMOVR0,#50HMOVR1,#06HMOVDPTR,#2800HLOOP0:MOVA,@R0PUSHACCANLA,#0FHLOOP1:CJNEA,#09H,NEXTLJMPASC1NEXT:SUBBA,#09HMOV00H,CADDCA,#09HMOVC,00HJCASC1LJMPASC2ASC1:ADDA,#30HMOVX@DPTR,AINCDPTRLJMPLOOP2ASC2:ADDA,#37HMOVX@DPTR,AINCDPTRLJMPLOOP2LOOP2:CJNER2,#00H,ENDPINCR2POPACCANLA,#0F0HSWAPALJMPLOOP1ENDP:POPACCMOVR2,#00HINCR0DJNZR1,LOOP0END3、CLRCCLRR1//R1用于存放有可能产生的第八和第九位MOVR2,#03HMOVA,@R0LOOP1:INCR0ADDA,@R0JNCLOOP2//如果有进位,就使R1加1ADDR1,#01HCLRCLOOP2:DJNZR2,LOOP1RRA//使A的内容右移两位,高RRA//两位用R1的低两位补齐MOVC,P1。0MOVA。6,CMOVC,P1。1MOVA。7,C4、ORG2000HAJMPMAINORG200AHMOVTL0,0D4H//定时器0重设初值CPLP1。0DJNZR0,ENDRETIMAIN:MOVR0,#0C8H//产生100个方波MOVTMOD,#01H//T0初始化MOVTL0,#0D4HMOVTH0,#03HSETBTR0//启动T0SETBET0//T0开中断SETBEA//CPU开中断SJMP$//等待END:END5、甲机主程序:ORG2000HMOVTMOD,#20HMOVTH1,#0E8HMOVTL1,#0E8HMOVSCON,#40H//串行口工作方式1SETBTR1MOVR0,#30HMOVR1,#08HLOOP:MOVA,@R0LCALLOUT1INCR0DJNZR1,LOOP串行口发送子程序:OUT1:MOVC,P//产生奇校验CPLCMOV