单片机期末复习题和参考答案

发布时间 : 星期一 文章单片机期末复习题和参考答案更新完毕开始阅读

MOV TL1,#0FAH MOV SCON,#40H

12.简述利用串行口进行多机通讯的原理。 解答:参考P146页。

13.使用8031的串行口按工作方式1进行串行数据通讯,假定波特率为2400b/s,以中断方式传送数据,请编写全双工通讯程序。 解答:略

14.使用8031的串行口按工作方式3进行串行数据通讯,假定波特率为1200b/s,第9数据位作奇偶校验位,以中断方式传送数据,请编写通讯程序。 解答:略

15.某8031串行口,传送数据的帧格式为1个起始位(0),7个数据位,1个偶校验位和1个停止位(1)组成。当该串行口每分钟传送1800个字符时,试计算出波特率。 解答:串口每秒钟传送的字符为:1800/60=30个字符/秒 所以波特率为:30个字符/秒×10位/个字符=300b/s

16.为什么MCS-51串行口的方式0帧格式没有起始位(0)和停止位(1)?

解答:串行口的方式0为同步移位寄存器输入输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个MCS-51之间的串行通信。该方式以fosc/12的固定波特率从低为位到高位发送或接受数据。

第八章习题解答

1.单片机存储器的主要功能是存储(程序)和(数据)。 2.试编写一个程序(例如将05H和06H拼为56H),设原始数据放在片外数据区2001H单元和2002H单元中,按顺序拼装后的单字节数放入2002H。 解:本题主要考察了对外部存储器的读、写操作,同学们只要记住正确使用MOVX指令就可以了。编程思路:首先读取2001H的值,保存在寄存器A中,将寄存器A的高四位和低四位互换,再屏蔽掉低四位然后将寄存器A的值保存到30H中,然后再读取2002H的值,保存在寄存器A中,屏蔽掉高四位,然后将寄存器A的值与30H进行或运算,将运算后的结果保存在2002H中。 ORG 0000H MAIN: MOV DPTR,#2001H ;设置数据指针的初值 MOVX A,@DPTR ;读取2001H的值 SWAP A ANL A,#0F0H ;屏蔽掉低四位 MOV 30H,A ;保存A INC DPTR ;指针指向下一个 MOVX A,@DPTR ;读取2002H的值

41

ANL A,#0FH ;屏蔽掉高四位 ORL A,30H ;进行拼装 MOVX @DPTR,A ;保存到2002H END

3.假设外部数据存储器2000H单元的内容为80H,执行下列指令后: MOV P2,#20H MOV R0,#00H MOVX A,@R0 累加器A中的内容为(80H)。

4.编写程序,将外部数据存储器中的4000H—40FFH单元全部清零。

解:本题主要考察了对外部数据块的写操作;编程时只要注意循环次数和MOVX指令的使用就可以了。 ORG 0000H MAIN: MOV A,#0 ;送预置数给A MOV R0,#0FFH ;设置循环次数 MOV DPTR,#4000H ;设置数据指针的初值 LOOP: MOVX @DPTR,A ;当前单元清零 INC DPTR ;指向下一个单元 DJNZ R0,LOOP ;是否结束 END

5.在MCS-51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突? 解:因为控制信号线的不同:

外扩的RAM芯片既能读出又能写入,所以通常都有读写控制引脚,记为OE和WE。外扩RAM的读、写控制引脚分别与MCS-51的RD和WR引脚相连。 外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与MCS-51单片机的PSEN相连。 6.区分MCS-51单片机片外程序存储器和片外数据存储器的最可靠的方法是: (1)看其位于地址范围的低端还是高段 (2)看其离MCS-51芯片的远近

(3)看其芯片的型号是ROM还是RAM

(4)看其是与RD信号连接还是与PSEN信号连接 解:本题的答案是3,4。

7.在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的(片选)端提供信号。

8.请写出图8-18中4片程序存储器27128各自所占的地址空间。

解:图中采用了译码法。4片地址分别为0000H-3FFFH、4000H-7FFFH、8000H-BFFFH、C000H-FFFFH。

9.起止范围为0000H-3FFFH的存储器的容量是(16)KB。

42

解:本题属于常识题,在第十一题时将有解答。

10.在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问(程序)存储器提供地址,而DPTR是为访问(数据)存储器提供地址。

11.11根地址线可选(2KB)个存储单元,16KB存储单元需要(14)根地址线。 解:通过总结所学知识,我们得到以下几个信息:2KB的存储器需要11根地址线,地址为0000H-07FFH;4KB的存储器需要12根地址线,地址为0000H-0FFFH;

8KB的存储器需要13根地址线,地址为0000H-1FFFH;16KB的存储器需要14根地址线,地址为0000H-3FFFH;32KB的存储器需要15根地址线,地址为0000H-7FFFH;64KB的存储器需要16根地址线,地址为0000H-FFFFH(以上存储器的首地址均默认为0000H)。

12.32KB RAM存储器的首地址若为2000H,则末地址为(9FFF)H。

解:由上题总结得出,32KB RAM存储器的大小为0000H-7FFFH,所以只要在后面加上2000H即得到正确答案

43

复习一 选择题答案

1-5 BBDBB 6-9CBBCC 11-15BACC B 16-20 CABBC 21-25DBDBA 26.-30CABBB 31-35BADCA 36-40 CCAAB 41-45ABDDA 46-50ACADD 51-55CBACD 56-60BBDA A 61-65DCCAC 66-70DBDBC 71-75 CA ADC 76-80DBADA 81-85CBACC 86-90BBABB 91-95ADCAA 96-100 BCBCB 101-105 BBCCC 106-110AABBB 111.-115DDBCA 116-120BCADC 121-125A DBCA 126-130BBDDB 131-135A DCDD 136-140ABAAB 141-145DCBDC 146-150BDACC 151-155AADCA 156-160BDCAC

44

联系合同范文客服:xxxxx#qq.com(#替换为@)