单片机七八答案.doc

上传人:飞****9 文档编号:136152792 上传时间:2020-06-25 格式:DOC 页数:5 大小:57.50KB
返回 下载 相关 举报
单片机七八答案.doc_第1页
第1页 / 共5页
单片机七八答案.doc_第2页
第2页 / 共5页
单片机七八答案.doc_第3页
第3页 / 共5页
单片机七八答案.doc_第4页
第4页 / 共5页
单片机七八答案.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《单片机七八答案.doc》由会员分享,可在线阅读,更多相关《单片机七八答案.doc(5页珍藏版)》请在金锄头文库上搜索。

1、第7章 AT89C51单片机的串行口4通过串行口发送或接收数据时,在程序中应使用 。AMOVC指令 BMOVX指令CMOV指令DXCHD指令答:(C)MOV指令。5串行口工作方式1的波特率是 。A固定的,为fosc/32B固定的,为fosc/16C可变的,通过定时器/计数器T1的溢出率设定D固定的,为fosc/64答:(C)。6在异步串行通信中,接收方是如何知道发送方开始发送数据的?答:当接收方检测到RXD引脚上的有效的负跳变时,即可知道发送方开始发送数据。7串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?答:串行口有4种工作方式:方式0、方式1、方式2、方式3。有3种帧格式

2、,方式2和3具有相同的帧格式。方式0的发送和接收都以fosc/12为固定波特率。方式1的波特率=2SMOD/32定时器T1的溢出率。方式2的波特率=2SMOD/64fosc。方式3的波特率=2SMOD/32定时器T1的溢出率。8假定串行口串行发送的字符格式为1个起始位、8个数据位、1个奇校验位、1个停止位,请画出传送字符“B”(42H)的帧格式。答:传送的字符“B”的帧格式如图所示(先低位后高位)。 起始位 0 1 0 0 0 0 1 0 校验位 停止位 图9为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、通信波特率,如何计算其初值?答:(1)因为定时器/计数器

3、在方式2下,初值可以自动重装,这样在进行串口波特率发生器设置时,就避免了重装参数的操作,且减少了重装参数的误差。 (2)已知时钟频率、通信波特率,根据公式(7-3),即可计算出初值。10若晶体振荡器为11.0592MHz,串行口工作于方式1,波特率为4 800bit/s,写出用T1作为波特率发生器的方式控制字和计数初值。答:经计算,初值为FAH。控制字:ANL TMOD,#0F0HORLMOD,#20HMOVTH1,#0FAHMOVTL1,#0FAHMOVSCON,#40H11简述利用串行口进行多机通信的原理。答:以方式1为例。发送过程:数据位由TXD端输出,发送1帧信息为10位,当CPU执行

4、1条数据写发送缓冲器SBUF的指令,就启动发送。发送开始时,内部发送控制信号SEND变为有效,将起始位向TXD输出,此后,每经过1个TX时钟周期,便产生1个移位脉冲,并由TXD输出1个数据位。8位数据位全部输出完毕后,置1中断标志位TI,然后SEND信号失效。接收过程:当检测到起始位的负跳变时,则开始接收。接收时,定时控制信号有2种。其中一种是位检测器采样脉冲,它的频率是RX时钟的16倍。也就是在1位数据期间,有16个采样脉冲,以波特率的16倍速率采样RXD引脚状态,当采样到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能

5、较好地消除干扰引起的影响,以保证可靠无误地开始接收数据。12使用AT89C51的串行口按工作方式1进行串行数据通信,假定波特率为2 400bit/s,以中断方式传送数据,请编写全双工通信程序。答:请参考教材的P115-P117程序,并作适当改动。13某AT89C51单片机串行口,传送数据的帧格式由1个起始位(0)、7个数据位、1个偶校验和1个停止位(1)组成。当该串行口每分钟传送1800个字符时,试计算出它的波特率。答:串口每秒钟传送的字符为1800/60=30个字符/秒,所以波特率为30个字符/秒10位1个字符=300b/s。14为什么AT89C51单片机串行口的方式0帧格式没有起始位(0)

6、和停止位(1)?答:串行口的方式0为同步移位寄存器输入/输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个89C51之间的串行通信。该方式以fosc/12的固定波特率从低位到高位发送或接收数据。15直接以TTL电平串行传输数据的方式有什么缺点?答:优点是连线简单,缺点是抗干扰性能差,传输距离短。第8章 AT89C51单片机扩展存储器的接口设计2假设外部数据存储器2000H单元的内容为80H,执行下列指令后累加器A中的内容为 。MOV P2,#20HMOV R0,#00H MOVX A,R0答:80H。3在存储器扩展中,无论是线选法还是译码法最终都是为扩展芯片的片选端提供 控制信

7、号。答:片选。4起止范围为0000H3FFFH的存储器的容量是 KB。答:16KB5在AT89C51单片机中,PC和DPTR都用于提供地址,但PC是为访问 存储器提供地址,而DPTR是为访问 存储器提供地址。答:程序,数据。611条地址线可选 个存储单元,16KB存储单元需要 条地址线。答:2KB,14。74KB RAM存储器的首地址若为0000H,则末地址为 H。答:0FFFH。8区分AT89C51单片机片外程序存储器和片外数据存储器的最可靠方法是 。A看其位于地址范围的低端还是高端B看其离AT89C51单片机芯片的远近C看其芯片的型号是ROM还是RAMD看其是与信号连接还是与信号连接答:D

8、。9试编写一个程序(如将05H和06H拼为56H),设原始数据放在片外数据区2001H单元和2002H单元中,按顺序拼装后的单字节数放入2002H。答:本题主要考察对外部存储器的读、写操作的编程,只要正确使用MOVX指令就可以了。编程思路:首先读取2001H的值,保存在寄存器A中,将寄存器A的高4位和低4位互换,再屏蔽掉低4位然后将寄存器A的值保存到30H中,然后再读取2002H的值,保存在寄存器A中,屏蔽掉高4位,然后将寄存器A的值与30H进行“或运算”,将运算后的结果保存在2002H中。ORG0000HMAIN:MOVDPTR,#2001H;设置数据指针的初值MOVXA,DPTR;读取20

9、01H的值SWAPAANLA,#0F0H;屏蔽掉低4位MOV30H,A;保存AINCDPTR;指针指向下一个片外RAM单元MOVXA,DPTR;读取2002H的值ANLA,#0FH;屏蔽掉高4位ORLA,30H;进行拼装MOVXDPTR,A;保存到2002H片外RAM单元END10编写程序,将外部数据存储器中的4000H40FFH单元全部清“0”。答:本题主要考察对外部数据块的写操作;编程时只要注意循环次数和MOVX指令的使用就可以了。ORG0000HMAIN:MOVA,#0;0给AMOV0,#0FFH;设置循环次数MOVDPTR,#4000H;设置数据指针的初值LOOP:MOVXDPTR,A

10、;当前单元清“0”INCDPTR;指向下一个单元DJNZR0,LOOP;是否结束END11在AT89C51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突?答:因为控制信号线的不同。外扩的RAM芯片既能读出又能写入,所以通常都有读、写控制引脚,记为和,它们分别与89C51的和引脚相连。外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为,该引脚与89C51单片机的相连。12请写出图8-14中4片程序存储器27128各自所占的地址空间。答:图中采用了译码法。4片地址分别为0000H3FFFH、4000H7FFFH

11、、8000HBFFFH、C000HFFFFH。13现有AT89C51单片机、74LS373锁存器、1片2764 EPROM和两片6264 RAM,请用它们组成一个单片机应用系统,要求如下:(1)画出硬件电路连线图,并标注主要引脚;(2)指出该应用系统程序存储器空间和数据存储器空间各自的地址范围。答:略。14图8-22(a)所示为AT89C51单片机中存储器的地址空间分布图。题图8-22(b)为存储器的地址译码电路,为使地址译码电路按题图8-22(a)所示的要求进行正确寻址,要求画出:(1)A组跨接端子的内部正确连线图。(2)B组跨接端子的内部正确连线图。答:(1)A组跨接端子的内部正确连线图如下左图所示。(2)B组跨接端子的内部正确连线图如下右图所示。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号