![单片机原理及应用部分习题答案_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/3b80c8aa-1add-4cdc-b88f-f28370abe3e0/3b80c8aa-1add-4cdc-b88f-f28370abe3e01.gif)
![单片机原理及应用部分习题答案_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/3b80c8aa-1add-4cdc-b88f-f28370abe3e0/3b80c8aa-1add-4cdc-b88f-f28370abe3e02.gif)
![单片机原理及应用部分习题答案_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/3b80c8aa-1add-4cdc-b88f-f28370abe3e0/3b80c8aa-1add-4cdc-b88f-f28370abe3e03.gif)
![单片机原理及应用部分习题答案_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/3b80c8aa-1add-4cdc-b88f-f28370abe3e0/3b80c8aa-1add-4cdc-b88f-f28370abe3e04.gif)
![单片机原理及应用部分习题答案_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-1/11/3b80c8aa-1add-4cdc-b88f-f28370abe3e0/3b80c8aa-1add-4cdc-b88f-f28370abe3e05.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及应用习题参考答案主 编:田亚娟编写组:单片机原理及应用精品课程组单 位:广东松山职业技术学院电气工程系日期:2008年12月第1章绪论1- 1. (1) 9AH, 154; 6. 375, 6. 6H(2) 1100. 011B, OC. 6H; 0111111. 111B, 7F. EH(3) 10110U1B, 183; 1111101111. 1000B; 1007.51- 2.(1)+1101110原=+1101110反=+1101110补= 01101110(2 )-1111111原=11111111-1111111反=10000000-1111111补=10000001
2、(3) +1010111原=+1010111反=+1010111补=01010111(4 ) -1000000原=11000000-1000000反=10111111-10000001=110000001- 3. (1) (0100 0111) BCD(2) (0110 1000) BCD(3) (0001 1001 1000 0110. 0111) BCD (0001 1001 0110 1001) BCD1- ri-7 略。第2章MCS-51单片机的结构和原理2- 广2-2、2-42-5、2-7、2-92T3、略。2- 3.答:程序状态标志寄存器PSW是一个8位可编程并可按位寻址 的专用寄
3、存器,用来存放当前指令执行结果的有关状态信息,位于特殊功能寄存器区,地址是ODOHo其各位定义如下:D7 D6 D5 D4D3 D2 DI DOCYACF0RS1RSOOVpCY (PSW. 7):进位标志。累加器A的最高位有进位或借位时,硬 件自动使该位置位(即CY二1),否则该位清零。AC (PSW. 6):辅助进位标志。当进行加法或减法操作时,若累加 器的D3位向D4位有进位或借位时,则硬件自动将其置位,否则该 位清零。FO (PSW. 5):用户通用状态标志。用户可对该位置位或清零,也 可用软件测试该位的状态以控制程序的流向。RSI (PSW.4)和RSO (PSW.3):工作寄存器组
4、选择控制位,用户 通过指令对RS1和RSO的状态设置,可以选择相应的工作寄存器组。OV (PSW. 2):溢岀标志。当有符号数加法或减法运算结果超出 (-128+127)范围时,说明计算结果已经溢出,此时该位将由硬 件自动置位(即0V二1),否则清零。PSW. 1:保留位。也可作为用户自行定义的状态标志位,其用法与PSW. 5相同。P (PSW.O):奇偶标志位。每个指令周期由硬件按累加器A屮值 为“1”的个数的奇偶性自动置位或清零。若A中有奇数个“1”, 则P置位,否则清零。2- 6.答:不能。因为在这种情况下,系统要进行扩展ROM。P0 口和 P2 口作为专用端口使用。P0 口分时作为低8
5、位地址的输岀口和数据 输入输出口。P2 口作为高8位地址输出口。2- 8.答:00HXFH为8051的片内RAM的空间。OOH'lFH是通用寄 存器区,共32个单元分成0, 1, 2, 3四个区,每个区的8个单元 都用R0、R7来表示。20H '2FH共16个单元是位寻址区,每个单 元的每一位都有它自己的位地址。30H'7FH是堆栈和数据缓冲区。 可用来对运算结果等屮间数据暂时保存和有关的数据堆栈。我们把内部RAM中字节地址00H7FH与位地址007F完全重合的 现象,称为地址重叠现彖,MCS-51指令系统提供了不同的访问指令 和寻址方式来解决这种地址重叠现象。CPU在
6、对位寻址单元进行位 操作时,设置有专用的位操作指令。第3章MCS-51单片机的指令系统3- 1、3-5 略3- 6. E5 30MOV A, 30H(A) - (30H)7442MOVA, #42H(A)-853874 MOV74H, 38H(74H) (38H)7850MOVRO, #50H(RO)50H26ADDA, R0(A) - (A) + (RO)D212SETB12H(12H) 01H3- 7. MOV A, 30H ;直接寻址方式,将内部RAM的30H单元的内 容传送:给累加器AMOV A, #30H;立即寻址方式,将立即数30H传送给累加器AMOV 31H, R0 :寄存器寻址
7、方式,将寄存器R0的内容传送 到31H单元MOV 31H, ©R0 ;寄存器间接寻址,将寄存器R0所指的地址 单元的内容;传送到31H3- 8. (1) R0的内容送R1。MOV A, ROMOV Rl, A(2) 外部RAM 40H单元的内容送内部RAM 40H单元。MOV RO, #40HMOVX A, ©ROMOV 40H, A(3) 外部RAM 7E00H单元内容送内部RAM RO。MOV DPTR, #7E00HMOV A, ©DPTRMOV RO, A(4) 外部ROM 7E00H单元内容送内部RAM 20H单元。MOV DPTR, #7E00HMOV
8、 A, #00HMOVC A, A+DPTRMOV 20H, A(5) 外部ROM 7E00H单元内容送外部RAM 20H单元。MOV DPTR, #7E00HMOV A, #00HMOVC A, A+DPTRMOV RO, #20HMOVX ©RO, A(6) 外部RAM 2000H单元内容送外部RAM 1000H单元。MOV DPTR, #2000HMOVX A, DPTRMOV DPTR, #1000HMOVX DPTR, A3-9. (RO)二42H, (42H)二08H, (A)二80H, (50H)二80H3-10. MOV A, #192ADD A, #88HMOV 3
9、0H, AMOV A, #00HADDC A, #00HMOV 31H, A3-11. A二57HCy二1; A二3BHCy二03-12. (20H)二OOH(A)二OOHCy二1;取消 DA 后:(20H)二9AH (A)二9AHCy二03-14.与操作结果为:00H3-13. rel二0F75H-0F46H二2FH或操作结果为:FFH异或操作结果:FFH3- 15. C二1P1二BBHP3=3CH第4章MCS-51单片机的程序设计4- 1. ORG 0000HCLR CMOV A, 50HMOV B, #10MUL ABMOV 53H, BADD A, 51HMOV 52H, AMOV A
10、, 53HADDC A, HOMOV 53H, AEND4- 2. ORG 0000HMOV R7, #30MOVR6,#0MOVR5,#0MOVR4,#51HMOVR3,#71HMOVRO,#20HMAIN: MOV A, ©ROJB ACC. 7, MAIN1INC R6MOV Rl, R4MOV R1, AAJMP LOOPMAIN1: INC R5MOV Rl, R3MOV R1, ALOOP: DJNZ R7, MAINMOV 50H, R6ENDMOV 70H, R54-3. ORG OOOOHCLR CMOV R7, #4MOV R6, #3MOV RO, #DATA+
11、4MOV Rl, #DATAMOV A, ROJNB ACC. 7, ENDOLP: MOV A, R1CPLAMOV R1, AINC R1DJNZ R7, LPMOV A, ©ROSETB ACC. 7MOV ©RO, AMOV A, R1MOV Rl, #DATAADD A, #1MOV R1, ALP1: INC R1MOV A, R1ADDC A, #0MOV R1, ADJNZ R6, LP1ENDO: SJMP $END4-4. ORG OOOOHMAIN: MOV DPTR, #4000HMOV R7, #50CLR ALOOP: MOVX ©DP
12、TR, AINC DPTRDJNZ R7, LOOPEND4-5. ORG OOOOHCLR CMOV RO, #DATA0MOV A, ROJZ MAINOJNB ACC. 7, MAIN1SUBB A, #5SJMP MAINOMAIN1: ADD A, #5MAINO: MOV DATA2, AEND4-6. ORG OOOOHMAIN: MOV RO, #55HMOV A, 60HCLR CSUBB A, #30HJC MAIN1SUBB A, #3AHMOV A, 60HJNC IAIN1MOV RO, #OOHMAIN1: MOV 62H, ROEND4-7. ORG OOOOHS
13、TADA DATA 20HSLANG DATA 1FHCMCRQ: MOV RO, #STADAMOV B, #OOHCRLP1: MOVX A, 40CJNE A, #ODH, CRNEXTMOV SLANG, BSJMP $CRNEXT: INC BINC ROSJMP CRLP1END4-9. ORG OOOOHMAIN: MOV RO, #2OHLOOP: CJNE 40, #20H, NKGINC ROSJMP LOOPNKG: MOV 95H, ROEND4-9. ORG OOOOHDATA EQU 30HMAIN: MOV A, DATAADD A, DATAMOV R2, AA
14、DD A, #06HMOVC A, A+PCXCH A, R2ADD A, #03HMOVC A, A+PCRETMOV R3, ATAB: DW 01, 01, 02, 06, 24, 120, 720, 5040END4-10. ORG OOOOHMAIN: MOVRO, #40HMOVA,©ROANLA,#OFHMOVB,INCROMOVA,©ROANLA, #OFHSWAP AORL A, BINC ROMOV R0, AEND4-11. ORG 1000HDATA1 EQU 40HDATA2 EQU 2000HMAIN: MOV Rb #14HMOVRO, #DA
15、TA1MOVDPTR, #DATA2NEXT: MOVA, ©DPTRXCHA, ROMOVX DPTR, AINC ROINC DPTRDJNZ Rb NEXTSJMP $END4-12. ORG 1OOOHDATA1 EQU 40HDATA2 EQU 2000HMAIN: MOV Rb #32HMOV RO, #DATA1NEXT: MOV A, ©ROMOVXA, DPTRINC ROINCDPTRDJNZ Rl, NEXTSJMP $END4- 13.平方表的一个数据占2个字节ORG 0000HMAIN: ADD A, APUSS ACCMOVCA, A+DPTRM
16、OV R7, APOP AINCA,MOVCA, A+DPTRMOV R6, ASJMP $TAB: DB 00, 00, 00, 01, 00, 04, 00, 09, 00, 16H,DB04H, 00STAT: MOV SP, #60HEND4- 144-15 略。第5章中断系统及定时/计数器题5-1'5-8答案略5- 9.出租车计价器计程方法是车轮每运转一圈产生一个负脉冲,从 外部中断(P3.2)引脚输入,行驶里程为轮胎周长X运转圈数,设 轮胎周长为2 m,试实时计算出租车行驶里程(单位米),数据存32H、 31H、 30Ho编程如下:ORG0000HLJMP STATORG0
17、003HLJMP INTORG 01OOHSETB ITOMOVIP, #01HMOVIE, #81HMOV30H, #0MOV31H, #0MOV32H, #0LJMPMAIN :转主程序,MAIN主程序可以处理循环显示等任务。ORG0200H;中断服务子程序首地址INT: PUSHAccPUSHPSWMOVA, 30HADDA, #2MOV30H, ACLRAADDCA, 31HMOV31H, ACLRAADDCA, 32HMOV 32H, APUSH PSWPUSH AccRETI5-10电路图如右图所示。程序如下:ORG0000HLJMPMAINORG0003HLJMPEXTERORG
18、1000HMAIN:SETBITOSETBEXOSETBEALOOP:AJMPLOOPORG 1050H中断程序入口EXTER: MOV R2, #OFFHMOV A, #01HFLASH: RRAMOVR7,#OFFH;定时LOOP1: MOV R6, #OFFHLOOP2: NOPNOPDJNZR6,L00P2DJNZR7,LOOP1MOVPl,ADJNZR2,FLASHRETIEND5- 11思路:根据要求,四个故障相当四个屮断源,可利用屮断查 询方法,将四个中断源归结为一个中断请求,同时四个故障信号引 到P1 口的四个输入端,然后在中断程序屮查询P1 口,确定是哪一 个故障申请的中断。
19、电路如下图所示。一旦发生故障,单片机必须 响应中断,因此,该屮断必须设置成最高级中断。在屮断程序屮可 以显示故障信息。扩展4个外中断源电路如下图所示。主程序和中断服务程序如下:ORGOOOOAJMPZCX1NOPORG 0013HAJMP INT1NOPORG 0100HZCX1: MOV SP, #30HMOVIP, #04HCLRITlSETBEASETBEXIZCX2:其他处理程序AJMP ZCX2ORG 0200HINTI:PUSH PSWPUSH ACCMOVA,PlANLA,#0FHJNBACCO, XIACALL XY1XI: JNB ACC1, X2ACALL XY2X2JNB
20、: ACC2,X3ACALLXY3X3:JNBCC3, X4ACALLXY4X4:POPACCPOPPSWRETIXY1: OC处理子程序(略)RET5T25T7 略。第6章单片机串行通信及接口6- 1、6-3 略。6-4.串行口的方式控制字SC0N=50H,允许接收,T1工作方式控制 字TMOD=20H;若晶振频率/osc=l 1.0592 MHz,串行口工作于方式1, 波特率为4800 bps,查表6-2可得T1计数初值为TH1=TL1=OFAH, 此时 SM0D = 0,所以 PC0N=00Ho6-5.设计双机通信系统如下:设甲、乙两进行通信、波特率为2400, 晶振均为IL 0592M
21、Hzo甲机将片外RAM的340034FFH的数据块通 过串行口传送给乙机,发送数据前将数据块长度发给乙机,当数据 发送完向乙机发送一个累加校验和。乙机接收将数据放在片外RAM 的4400、44FFH单元屮,同时进行累加和校验,如果和甲机发送的累 加和一致,发数据“00H”表示接收正确,如果不一致,发数据“FFH”, 甲方再重发。解:(1) T1计数初值:两机晶振为11.0592MHz,波特率为2400,T1工作在定时器方式2,查表6-2可得TH1二TL1二0F4H, PC0N寄存器 的SM0D位为0o(2)约定R7作为数据长度计数器,计数256个字节。采用减1计 数,初值取0, R6作为累加和
22、寄存器。甲机发送程序:TRT: MOV TMOD, #20HMOVTH1,#0F4HMOVTLl,#0F4HSETBTRIMOVSCON,#50HRPT: MOV DPTR, #3400HMOV R7, #00HMOV R6, #00HMOV SBUF, R7L00P1: JBC TI, L00P2AJMP L00P1L00P2: MOVX A, ©DPTRMOV SBUF, AADD A, R6MOV R6, AINC DPTRL00P4: JBC TI, L00P3AJMP L00P4L00P3: DJNZ R7, L00P2MOV SBUF, R6MOV R6, #OOHL00
23、P6: JBC TI, LOOP5AJMP L00P6LOOP5: JBC RI, LOOP7AJMP LOOP5LOOP7: MOV A, SBUFJZ LOOPSAJMP RPTLOOPS: RET乙机接收程序:首先接收数据长度,然后接收数据,当接收256字节后,接收校验 码,进行累加和校验,数据传送结朿时,向甲机发送一个状态字节, 表示传送正确或出错。RSU: MOV TMOD, #20HMOVTH1,#0F4HMOVTLl,#0F4HSETBTRIMOVSCON,#50HDPT: MOV DPTR, #4400HLOOPO: JBC RI, LOOP1AJMP LOOPOLOOP1:
24、MOV A, SBUFMOVR7, AMOV R6, #OOHWTD: JBC RI, L00P2AJMP WTDLOOP2: MOV A, SBUFMOVX DPTR, AINC DPTRDJNZ R7, WTDL00P5: JBC RI, L00P4AJMP L00P5L00P4: MOV A, SBUFXRLA, R6MOVR6, #00HJZL00P6MOVSBUF, #OFFHL00P8:JBC TI, LOOP7AJMP LOOPSLOOP7:AJMP DPTLOOP6:MOV SBUF, #00HL00P9: JBC TI, L00P3AJMP L00P9L00P3: RET 6
25、-6.电路图如下图所示,串行口处于方式0条件下发送数据。程序如下:ORG 2000HMOV SCON, #OOHMOV A, #OFFHMOV SBUF, ALOOP: JNBTI, LOOPCLRTIACALLDELCPLAMOV SBUF, ASJMPLOOPDEL: MOVR5, #10DELO: MOVR6, #200DELI: MOVR7, #248NOPDEL2: DJNZR7, DEL2DJNZR6, DELIDJNZR5, DELORETEND第7章单片机系统扩展略。第8章A/D和D/A转换的接口技术8T8-6、8-8> 8-9、8T0、8T3、8T5 略。8-7.用80
26、31和DAC0832设计一个周期和幅值可调的锯齿波、三角波和阶梯波的波形发生器。要求画岀电路图并编程。答:见下图8031F0.0F0.1FD.2FD.3F0.4FD.5F0.6F0.7P2.7386375364351634153314321374LS0428 1O.2Q1LJUz16397U110DACO85245710口12DI3DI4善XFER 屈DGND血AOND程序如下:1)程序1:DA_ADR EQU 7FFFH;DA的地址ORG0000HLJMPIAINORG0100HMAIN: MOVDPTR, #DA_ADRCLRALOOP: MOVX0DPTR, AINCACJNEA, #O
27、FFH, LOOPSJMPMAINEND2)程序2:;DA的地址.02SDA_ADR EQU 7FFFH;DA的地址ORGOOOOHLJMP1AINORGO1OOHMAIN: MOVDPTR, #DA_ADRCLRALOOP: MOVXDPTR,AINCAACALL DELCJNEA,#OFFH, LOOPL2: SJMPLILI: MOVX DPTR, ADEC AACALLDEL;DA的地址CJNE A, #0,L0SJMP MAINDEL:MOV R7, #5DJNZ R7, $RETEND3)程序3:图中A t=0. 1ms, AV=10,阶梯波级数为10级。DA_ADREQU7FFF
28、H;DA的地址ORG0000HLJMPIAINORG0100HMAIN: MOVDPTR, #DA_ADR;DA 的地址CLRAMOVR7,#5LOOP: MOVXDPTR, AACALL DELADD A, #51DJNZ R7, LOOPSJMP MAINDEL:MOV R6, #5LI:MOV R5, #255DJNZ R5, $DJNZ R6,L1RETEND8-11.答:在启动A/D转换指令“MOVX DPTR, A”中,A屮数据写 到ADC0809的三态输出锁存缓冲器,A中的数据是什么都无所谓, 因为这时数据输出允许信号无效,三态输出锁存缓冲器对外呈高阻 状态。DPTR屮的地址包含了选屮转换模拟量的模拟通道和START信 号。作用是使STAET信号有效从而启动A/D转换器进行转换,并同 时使EOC信号为低电平表示转换开始。读转换
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子图书出版与运营手册
- 房屋租赁三方合同格式
- 焊接工艺与材料选择作业指导书
- 成本合同管理大全
- 生物科技居间合同协议书
- 有关事业单位合同
- 2025年呼和浩特货运从业资格证模拟考试题下载
- 2025年南昌从业资格货运资格考试题库答案解析
- 2025年龙岩a2驾驶证货运从业资格证模拟考试
- 电力市场策略合同(2篇)
- 2024年中考语文 (湖北专用)专题一 字音、字形课件
- 办公软件、计算机应用知识培训教案
- 2023年全国高考乙卷历史真题试卷及答案
- 数学小故事-二年级
- 腔镜器械的清洁消毒与保养课件
- 奥数培训班课件
- 2022煤矿安全规程解读课件
- SWITCH暗黑破坏神3超级金手指修改 版本号:2.7.7.92380
- 赏析小说语言(二)
- 【立高食品公司的偿债能力现状及问题分析(论文9000字)】
- 销量返点合同范本
评论
0/150
提交评论