《单片机原理及应用》部分习题答案
更新时间:2024-01-20 04:54:01 阅读量: 教育文库 文档下载
《单片机原理及应用》习题参考答案
主 编:编 写 组:单 位:日 期:
田亚娟 单片机原理及应用精品课程组 广东松山职业技术学院电气工程系 2008年12月
1
第1章 绪 论
1-1.(1)9AH,154;6.375,6.6H
(2)1100.011B,0C.6H;0111111.111B,7F.EH (3)10110111B,183;1111101111.1000B;1007.5
1-2.(1)[+1101110]原=[+1101110]反=[+1101110]补=01101110
(2)[-1111111]原=11111111 [-1111111]反=10000000 [-1111111]补=10000001 (3)[+1010111]原=[+1010111]反=[+1010111]补=01010111
(4)[-1000000]原=11000000 [-1000000]反=10111111 [-1000000]补=11000000 1-3.(1)(0100 0111)BCD (2)(0110 1000)BCD
(3)(0001 1001 1000 0110. 0111)BCD (4)(0001 1001 0110 1001)BCD 1-4~1-7略。
第2章 MCS-51单片机的结构和原理
2-1~2-2、2-4~2-5、2-7、2-9~2-13、略。
2-3. 答:程序状态标志寄存器PSW是一个8位可编程并可按位寻址的专用寄存器,用来存放当前指令执行结果的有关状态信息,位于特殊功能寄存器区,地址是0D0H。其各位定义如下:
D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV — P
CY(PSW.7):进位标志。累加器A的最高位有进位或借位时,硬件自动使该位置位(即CY=1),否则该位清零。
AC(PSW.6):辅助进位标志。当进行加法或减法操作时,若累加器的D3位向D4位有进位或借位时,则硬件自动将其置位,否则该位清零。
F0(PSW.5):用户通用状态标志。用户可对该位置位或清零,也可用软件测试该位的状态以控制程序的流向。
RS1(PSW.4)和RS0(PSW.3):工作寄存器组选择控制位,用户通过指令对RS1和RS0的状态设置,可以选择相应的工作寄存器组。
OV(PSW.2):溢出标志。当有符号数加法或减法运算结果超出(-128~+127)范围时,说明计算结果已经溢出,此时该位将由硬件自动置位(即OV=1),否则清零。
PSW.1:保留位。也可作为用户自行定义的状态标志位,其用法与PSW.5相同。 P(PSW.0):奇偶标志位。每个指令周期由硬件按累加器A中值为“1”的个数的奇偶性自动置位或清零。若A中有奇数个“1”,则P置位,否则清零。
2-6. 答:不能。因为在这种情况下,系统要进行扩展ROM。P0口和P2口作为专用
2
端口使用。P0口分时作为低8位地址的输出口和数据输入输出口。P2口作为高8位地址输出口。
2-8. 答:00H~7FH为8051的片内RAM的空间。①00H~1FH是通用寄存器区,共32个单元分成0,1,2,3四个区,每个区的8个单元都用R0~R7来表示。②20H ~2FH共16个单元是位寻址区,每个单元的每一位都有它自己的位地址。③30H~7FH是堆栈和数据缓冲区。可用来对运算结果等中间数据暂时保存和有关的数据堆栈。 我们把内部RAM中字节地址00H~7FH与位地址00~7F完全重合的现象,称为地址重叠现象,MCS-51指令系统提供了不同的访问指令和寻址方式来解决这种地址重叠现象。CPU在对位寻址单元进行位操作时,设置有专用的位操作指令。
第3章 MCS-51单片机的指令系统
3-1~3-5略
3-6. E5 30 MOV A,30H (A)←(30H)
74 42 MOV A,#42H (A)←
85 38 74 MOV 74H,38H (74H)←(38H) 78 50 MOV R0,#50H (R0)←50H
26 ADD A,@R0 (A)←(A)+((R0)) D2 12 SETB 12H (12H)←01H
3-7. MOV A,30H ;直接寻址方式,将内部RAM的30H单元的内容传送
;给累加器A
MOV A,#30H ;立即寻址方式,将立即数30H传送给累加器A
MOV 31H,R0 ;寄存器寻址方式,将寄存器R0的内容传送到31H单元 MOV 31H,@R0 ;寄存器间接寻址,将寄存器R0所指的地址单元的内容
;传送到31H
3-8.(1)R0的内容送R1。
MOV A, R0 MOV R1,A
(2)外部RAM 40H单元的内容送内部RAM 40H单元。
MOV R0,#40H MOVX A,@R0 MOV 40H,A
(3)外部RAM 7E00H单元内容送内部RAM R0。
MOV DPTR,#7E00H MOV A,@DPTR MOV R0,A
(4)外部ROM 7E00H单元内容送内部RAM 20H单元。
3
MOV DPTR,#7E00H MOV A,#00H
MOVC A,@A+DPTR MOV 20H,A
(5)外部ROM 7E00H单元内容送外部RAM 20H单元。
MOV DPTR,#7E00H MOV A,#00H
MOVC A,@A+DPTR MOV R0,#20H MOVX @R0,A
(6)外部RAM 2000H单元内容送外部RAM 1000H单元。MOV DPTR,#2000H MOVX A,@DPTR MOV DPTR,#1000H MOVX @DPTR,A
3-9. (R0)=42H,(42H)=08H,(A)=80H,(50H)=80H 3-10. MOV A,#192
ADD A,#88H MOV 30H,A MOV A,#00H ADDC A,#00H MOV 31H,A
3-11. A=57H Cy=1;A=3BH Cy=0
3-12. (20H)=00H (A)=00H Cy=1; 取消DA后:(20H)=9AH (A)=9AH Cy=0 3-13. rel=0F75H-0F46H=2FH 3-14. 与操作结果为:00H 或操作结果为:FFH 异或操作结果:FFH
3-15. C=1 P1=BBH P3=3CH
第4章 MCS-51单片机的程序设计4-1. ORG 0000H CLR C
MOV A,50H MOV B,#10
4
MUL AB
MOV 53H,B ADD A,51H MOV 52H,A MOV A,53H ADDC A,#0 MOV 53H,A END
4-2. ORG 0000H
MOV R7,#30 MOV R6,#0 MOV R5,#0 MOV R4,#51H MOV R3,#71H MOV R0,#20H MAIN:MOV A,@R0
JB ACC.7,MAIN1 INC R6
MOV R1,R4 MOV @R1,A AJMP LOOP MAIN1:INC R5
MOV R1,R3 MOV @R1,A LOOP:DJNZ R7,MAIN
MOV 50H,R6 MOV 70H,R5 END
4-3. ORG 0000H
CLR C
MOV R7,#4 MOV R6,#3
MOV R0,#DATA+4 MOV R1,#DATA MOV A,@R0 JNB ACC.7,END0
5
ORG 1000H
MAIN: SETB IT0 SETB EX0 SETB EA
LOOP: AJMP LOOP
ORG 1050H ;中断程序入口 EXTER:MOV R2,#0FFH MOV A, #01H FLASH:RR A MOV R7, #0FFH;定时 LOOP1:MOV R6, #0FFH LOOP2:NOP NOP DJNZ R6, LOOP2 DJNZ R7, LOOP1 MOV P1, A DJNZ R2,FLASH RETI END
5-11. 思路:根据要求,四个故障相当四个中断源,可利用中断查询方法,将四个中断源归结为一个中断请求,同时四个故障信号引到P1口的四个输入端,然后在中断程序中查询P1口,确定是哪一个故障申请的中断。电路如下图所示。一旦发生故障,单片机必须响应中断,因此,该中断必须设置成最高级中断。在中断程序中可以显示故障信息。
扩展4个外中断源电路如下图所示。
P1.3P1.2P1.1OCOVUVOHP1.0?Y1INT1C51 主程序和中断服务程序如下: ORG 0000
AJMP ZCX1
11
NOP
ORG 0013H
AJMP INT1 NOP
ORG 0100H
ZCX1:MOV SP,#30H
MOV IP,#04H
CLR IT1 SETB EA SETB EX1
ZCX2:其他处理程序 AJMP ZCX2 ORG 0200H
INT1: PUSH PSW PUSH ACC
MOV A,P1 ANL A,#0FH
JNB ACC0,X1
ACALL XY1 X1: JNB ACC1,X2 ACALL XY2 X2JNB:ACC2,X3
ACALL XY3 X3: JNB CC3,X4
ACALL XY4 X4: POP ACC POP PSW RETI
XY1: OC处理子程序(略) RET 5-12~5-17略。
第6章 单片机串行通信及接口
6-1~6-3略。
6-4. 串行口的方式控制字SCON=50H,允许接收,T1工作方式控制字TMOD=20H;若晶振频率fOSC=11.0592 MHz,串行口工作于方式1,波特率为4800 bps,查表6-2
12
可得T1计数初值为TH1=TL1=0FAH,此时SMOD=0,所以PCON=00H。 6-5. 设计双机通信系统如下:设甲、乙两进行通信、波特率为2400,晶振均为11.0592MHz。甲机将片外RAM的3400H~34FFH的数据块通过串行口传送给乙机,发送数据前将数据块长度发给乙机,当数据发送完向乙机发送一个累加校验和。乙机接收将数据放在片外RAM的4400~44FFH单元中,同时进行累加和校验,如果和甲机发送的累加和一致,发数据“00H”表示接收正确,如果不一致,发数据“FFH”,甲方再重发。 解:(1)T1计数初值:两机晶振为11.0592MHz,波特率为2400,T1工作在定时器方式2,查表6-2可得TH1=TL1=0F4H,PCON寄存器的SMOD位为0。
(2)约定R7作为数据长度计数器,计数256个字节。采用减1计数,初值取0,R6作为累加和寄存器。 甲机发送程序:
TRT:MOV TMOD,#20H
MOV TH1,#0F4H MOV TL1,#0F4H SETB TR1
MOV SCON,#50H RPT:MOV DPTR,#3400H
MOV R7,#00H MOV R6,#00H MOV SBUF,R7 LOOP1:JBC TI,L00P2
AJMP LOOP1
LOOP2:MOVX A,@DPTR
MOV SBUF,A ADD A,R6 MOV R6,A INC DPTR
LOOP4:JBC TI,LOOP3
AJMP LOOP4
LOOP3:DJNZ R7,LOOP2
MOV SBUF,R6 MOV R6,#00H
LOOP6:JBC TI,LOOP5
AJMP LOOP6
LOOP5:JBC RI,LOOP7
13
AJMP LOOP5
LOOP7:MOV A,SBUF
JZ LOOP8 AJMP RPT LOOP8:RET 乙机接收程序:
首先接收数据长度,然后接收数据,当接收256字节后,接收校验码,进行累加和校验,数据传送结束时,向甲机发送一个状态字节,表示传送正确或出错。 RSU:MOV TMOD,#20H
MOV TH1,#0F4H MOV TL1,#0F4H SETB TR1
MOV SCON,#50H DPT:MOV DPTR,#4400H LOOP0:JBC RI,L00P1
AJMP LOOP0
LOOP1:MOV A,SBUF
MOV R7,A MOV R6,#00H WTD:JBC RI,LOOP2 AJMP WTD
LOOP2:MOV A,SBUF
MOVX @DPTR,A INC DPTR ADD A,R6 MOV R6,A DJNZ R7,WTD
LOOP5:JBC RI,LOOP4
AJMP LOOP5
LOOP4:MOV A,SBUF
XRL A,R6 MOV R6,#00H JZ LOOP6
MOV SBUF,#0FFH LOOP8:JBC TI,LOOP7
AJMP LOOP8
14
LOOP7:AJMP DPT
LOOP6:MOV SBUF,#00H LOOP9:JBC TI,LOOP3
AJMP LOOP9 LOOP3:RET
6-6. 电路图如下图所示,串行口处于方式0条件下发送数据。 程序如下:
ORG 2000H
MOV SCON,#00H MOV A,#0FFH MOV SBUF,A LOOP:JNB TI,LOOP
CLR TI ACALL DEL CPL A
MOV SBUF,A SJMP LOOP DEL: MOV R5,#10 DEL0:MOV R6,#200 DEL1:MOV R7,#248
NOP
DEL2:DJNZ R7,DEL2
DJNZ R6,DEL1 DJNZ R5,DEL0 RET END
第7章 单片机系统扩展
略。
第8章 A/D和D/A转换的接口技术
8-1~8-6、8-8、8-9、8-10、8-13~8-15略。
8-7. 用8031和DAC0832设计一个周期和幅值可调的锯齿波、三角波和阶梯波的波形发生器。要求画出电路图并编程。 答:见下图
15
程序如下:
1)程序1:
DA_ADR EQU 7FFFH ;DA的地址 ORG 0000H LJMP MAIN ORG 0100H
MAIN: MOV DPTR,#DA_ADR ;DA的地址 CLR A
LOOP: MOVX @DPTR,A INC A
CJNE A,#0FFH,LOOP SJMP MAIN END
2)程序2:
0.02S
DA_ADR EQU 7FFFH ;DA的地址 ORG 0000H LJMP MAIN ORG 0100H
MAIN: MOV DPTR,#DA_ADR ;DA的地址
16
CLR A
LOOP: MOVX @DPTR,A INC A
ACALL DEL
CJNE A,#0FFH,LOOP
L2: SJMP L1
L1: MOVX @DPTR,A DEC A
ACALL DEL CJNE A,#0,L0 SJMP MAIN DEL:MOV R7,#5 DJNZ R7,$ RET END
3)程序3:
图中Δt=0.1ms,ΔV=10,阶梯波级数为10级。
uo?tt0?V
DA_ADR EQU 7FFFH ;DA的地址 ORG 0000H LJMP MAIN ORG 0100H
MAIN: MOV DPTR,#DA_ADR ;DA的地址 CLR A MOV R7,#5
LOOP: MOVX @DPTR,A ACALL DEL
ADD A,#51
DJNZ R7,LOOP SJMP MAIN
17
DEL:MOV R6,#5 L1:MOV R5,#255 DJNZ R5,$ DJNZ R6,L1 RET END
8-11. 答:在启动A/D转换指令“MOVX @DPTR,A”中,A中数据写到ADC0809的三态输出锁存缓冲器,A中的数据是什么都无所谓,因为这时数据输出允许信号无效,三态输出锁存缓冲器对外呈高阻状态。DPTR中的地址包含了选中转换模拟量的模拟通道和START信号。作用是使STAET信号有效从而启动A/D转换器进行转换,并同时使EOC信号为低电平表示转换开始。
读转换信号指令“MOVX A,@DPTR”中,DPTR中的地址包含了选中转换模拟量的模拟通道和OE信号。作用是使OE信号有效从而使数据经过三态输出锁存缓冲器输出,数据出现在数据总线上。 8-12. 答:程序如下;
ORG 0000H LJMP MAIN ORG 0003H
LJMP INT0
ORG 0030H ;主程序 MAIN:DATA EQU 30H
MOV R0, #DATA ;设立数据存储区指针
MOV R2,#08H ;设置8路采样计数值
SETB IT0 ;设置外部中断0为边沿触发方式 SETB EA ;CPU开放中断
SETB EX0 ;允许外部中断0中断
MOV DPTR,# 0BFFFH ;送入口地址并指向INT0 LOOP: MOVX @DPTR,A ;启动A/D转换,A的值无意义
HERE:SJMP HERE ;等待中断IN0
ORG 0100H ;中断服务程序 INT0:MOVX A,@DPTR;读取转换后的数字量
MOV @R0,A ;存入片内RAM单元 DEC DPL ;指向下一模拟通道
INC R0 ;指向下一个数据存储单元 DJNZ R2,NEXT ;8路未转换完,则继续 CLR EA ;已转换完,则关中断
18
CLR EX0 ;禁止外部中断0中断
SJMP L1
NEXT:MOVX @DPTR,A ;再次启动A/D转换
L1:RETI ; 中断返回
END
ALE CK Q CLK
D Q G OEADC D7 IN7 Q7 0809 P0 8051 : 373: : : C EA D0 Q0 B A WRD0~D7 +P2.6 STARTIN0 ALE
RD + OE
P3.2 1 EOC 第9章 单片机系统的工程设计
9-1~9-4略
9-5.(1)单相四拍方式,步间软件延时10 ms,连续正转。
ORG 0000H AJMP START ORG 0030H
START:MOV A,#0EEH LOOP: MOV P1, A
ACALL DELAY RL A AJMP LOOP DELAY:MOV R6,#45 DL2: MOV R5,#54 DL1: DJNZ R5,DL1
DJNZ R6,DL2 RET END
(2)双相四拍方式,步间软件延时10 ms,连续反转。
ORG 0000H AJMP START ORG 0030H
19
START:MOV A,#0CCH LOOP: MOV P1, A
ACALL DELAY
RR A AJMP LOOP DELAY:MOV R6,#45 DL2: MOV R5,#54 DL1: DJNZ R5,DL1
DJNZ RET END
R6,DL2 20
正在阅读:
《单片机原理及应用》部分习题答案01-20
典型数控系统数据备份与参数设置03-04
16秋东财《财务分析》在线作业三答案11-13
让幼儿在区域活动中迸发智慧的火花06-05
湖南长沙车辆道闸门禁识别系统哪家好多少钱04-09
木质素磺酸钠项目可行性研究报告06-03
安全管理员岗位职责(优秀6篇)03-26
软件编制的脚手架施工方案(含物料提升机、卸料平台)06-27
关于我爱你的句子10-04
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 单片机
- 习题
- 原理
- 答案
- 部分
- 应用
- 高三政治第三次模拟考试试题新人教版
- 某酒厂白酒生产搬迁改造项目可行性研究报告
- 湖南省长沙市长郡中学2019届高三上学期第二次月考英语试卷(含答案)
- 高速公路标路基路基标准化施工方案
- SDDC桩地基处理工程施工方案
- 特殊教育概论模拟试卷
- 太阳影子定位
- 质量标准化管理规定 - 图文
- 九年级语文测试习题:第3课《西花厅的海棠花又开了》同步练习1(语文版九上)
- DGSS操作实训笔记
- JAVA期末复习资料2
- 中考复习 第06讲 学生版 - 图文
- 浅谈基层党务工作存在的问题及一些思考
- 浅谈小学生英语学习兴趣的培养
- 金庸群侠传之武林浩荡1.8
- 分数加减乘除应用题专项练习210题(有答案)ok
- SDDC桩地基处理工程施工方案
- 人教版九年级语文上册期末试卷及答案
- MT电厂电气一次初步设计
- 科技英语 电子教案