第06章-单片机串行通信系统-习题解答

上传人:日度 文档编号:147741960 上传时间:2020-10-13 格式:DOC 页数:10 大小:199KB
返回 下载 相关 举报
第06章-单片机串行通信系统-习题解答_第1页
第1页 / 共10页
第06章-单片机串行通信系统-习题解答_第2页
第2页 / 共10页
第06章-单片机串行通信系统-习题解答_第3页
第3页 / 共10页
第06章-单片机串行通信系统-习题解答_第4页
第4页 / 共10页
第06章-单片机串行通信系统-习题解答_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《第06章-单片机串行通信系统-习题解答》由会员分享,可在线阅读,更多相关《第06章-单片机串行通信系统-习题解答(10页珍藏版)》请在金锄头文库上搜索。

1、第6章 单片机串行通信系统 习题解答一、填空题1在串行通信中,把每秒中传送的二进制数的位数叫 波特率 。2当SCON中的M0M1=10时,表示串口工作于方式 2 ,波特率为 fosc/32或fosc/64 。3SCON中的REN=1表示 允许接收 。4PCON 中的SMOD=1表示 波特率翻倍 。5SCON中的TI=1表示 串行口发送中断请求 。6MCS-51单片机串行通信时,先发送 低 位,后发送 高 位。7MCS-51单片机方式2串行通信时,一帧信息位数为 11 位。8设T1工作于定时方式2,作波特率发生器,时钟频率为11.0592MHz,SMOD=0,波特率为2.4K时,T1的初值为 F

2、AH 。9MCS-51单片机串行通信时,通常用指令 MOVSBUF,A 启动串行发送。10MCS-51单片机串行方式0通信时,数据从 P3.0 引脚发送/接收。二、简答题 1串行口设有几个控制寄存器?它们的作用是什么?答:串行口设有2个控制寄存器,串行控制寄存器SCON和电源控制寄存器PCON。其中PCON中只有PCON.7的SMOD与串行口的波特率有关。在SCON中各位的作用见下表:SCOND7D6D5D4D3D2D1D0位名称SM0SM1SM2RENTB8RB8TIRI位地址9FH9EH9DH9CH9BH9AH99H98H功能工作方式选择多机通信控制接收 允许发送 第9位接收 第9位发送

3、中断接收 中断2MCS-51单片机串行口有几种工作方式?各自的特点是什么?答:有4种工作方式。各自的特点为:SM0SM1方式功能波特率00方式0移位寄存器方式fosc/1201方式18位异步通信方式可变10方式29位异步通信方式fosc/32或fosc/6411方式39位异步通信方式可变3MCS-51单片机串行口各种工作方式的波特率如何设置,怎样计算定时器的初值?答:串行口各种工作方式的波特率设置:工作方式O:波特率固定不变,它与系统的振荡频率fosc的大小有关,其值为fosc/12。工作方式1和方式3:波特率是可变的,波特率=(2SMOD/32)定时器T1的溢出率工作方式2:波特率有两种固定

4、值。当SM0D=1时,波特率=(2SM0D/64)fosc=fosc/32当SM0D=0时,波特率=(2SM0D/64)fosc=fosc/64计算定时器的初值计算:4若fosc = 6MHz,波特率为2400波特,设SMOD =1,则定时/计数器T1的计数初值为多少?并进行初始化编程。 答:根据公式N=256-2SMODfosc /(24003212)= 242.98243 =F3HTXDA: MOV TMOD,#20H;置T1定时器工作方式2 MOV TL1,#0F3H ;置T1计数初值. MOV TH1,#0F3H MOV PCON,#80H ;置SMOD =15用8051串行口外接CD

5、4094扩展8位并行输出口,驱动8个LED发光二极管。画出硬件电路图,编写程序,使LED发光二极管从左到右依次闪亮。答:电路图如下LED发光二极管从左到右循环点亮的C51参考程序:#include /包含51单片机寄存器定义的头文件#include /包含函数_nop_()定义的头文件unsigned char code Tab=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;/流水灯控制码,该数组被定义为全局变量sbit P17=P17;void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n

6、250;n+) ; /*函数功能:发送一个字节的数据*/void Send(unsigned char dat) P17=0; /P1.7引脚输出锁存信号,对cd4094锁存 nop_(); /延时一个机器周期 _nop_(); /延时一个机器周期,保证锁存完成 P17=1; /结束对cd4094的锁存 SBUF=dat; /将数据写入发送缓冲器,启动发送 while(TI=0) /若没有发送完毕,等待 ; TI=0; /发送完毕,TI被置“1”,需将其清0/*函数功能:主函数*/void main(void) unsigned char i; SCON=0x00; /SCON=0000 00

7、00B,使串行口工作于方式0 while(1) for(i=0;i8;i+) Send(Tabi); /发送数据 delay(); /延时 三、Proteus仿真Proteus仿真1.在Proteus下,仿真实现6.6节内容。答:全自动洗衣机串行方式时间显示Proteus仿真为节省单片机并口资源,全自动洗衣机时间显示可用串口实现。一次洗衣时间一般不会超过99分钟,用2位LED数码管显示时间即可。电路如图6-9所示。图6-9 全自动洗衣机串行方式时间显示电路 图6-9中用AT89C51单片机串行口扩展2个并行口,接2位数码管组成显示电路。串行口工作于方式0,与外接的2片移位寄存器74LS164连

8、接。74LS164是一个8位串入并出的移位寄存器,功能是接收AT89C51单片机串行通信口输出的串行数据并转换成并行数据输出,从而驱动LED数码管显示。74LS164的1、2脚为数据输入端,接单片机串行口的RXD端(P3.0脚),74LS164的第8脚为时钟脉冲输入端(CLK),接单片机串行口的TXD端(P3.1脚),第9脚R为清零端,低电平清零,正常工作时接高电平。两只LED数码管采用共阴极静态显示方式。下列程序实现串行两位LED数码管时间显示,显示范围为0099分钟。使用串行口进行信息传送,程序编写相当简单,用户只需将需要显示的数据直接送串口发送缓冲器,等待串行中断即可。汇编语言参考程序:

9、ORG 0000H ;在0000H单元存放转移指令LJMP NAIN ;转移到主程序ORG 000BH ;定时器T0的中断入口地址 LJMP INTERRUPT ;转移到中断子程序ORG 0200H ;主程序从0200H开始MAIN: MOV TMOD,#01H ;使用定时器T0,工作方式1MOV TH0, #3CH ;置初T0值50msMOV TL0, #0B0HH MOV R0,#0 ;用于存1秒的计数次数SETB EA ;开中断总允许SETB ET0 ;允许T0中断 SETB TR0 ;启动计时LOOP: LCALL Display ;循环调用显示子程序 SJMP LOOPTAB: DB

10、 3FH,06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FH ;09的共阴极段码DISPLAY: ;显示子程序(显示分钟)MOV DPTR, #TAB ;将表首地址赋给DPTRMOV A, 30H ;将30H中存放的分计数赋给累加器AMOV B, #0AH ;将10赋给累加器BDIV AB ;分计数除以10得十位数放在A中,个位数放在B中MOVX A, A+DPTR ;查表得十位数的显示段码MOV SBUF, A ;发送十位数L1: JBC TI, L2 ;判是否发送完,未发完循环等待,若发完则转L2SJMP L1L2: MOV A, B ;将个位数赋给累加

11、器AMOVX A, A+DPTR ;查表得个位数的显示段码MOV SBUF, A ;发送个位数L3: JBC TI, L4 ;判是否发送完,未发完循环等待,若发完则转L4SJMP L3L4: RET ;子程序返回INTERRUPT: ;中断服务子程序INC R0 ;每中断一次(50ms)加1CJNE R0, #20, L5 ;判是否中断20次,若不是则转L5中断返回,若是则顺序执行CLR R0 ;到1秒钟,清R0INC R1 ;秒计数加1CJNE R1, #60, L5 ;判秒是否计满60次,若未满则转L5中断返回,若满则顺序执行CLR R1 ;如果秒计满60,将秒计数单元内容清0INC 30H ;分钟计数单元30H内容加1CJNE 30H, #99, L5 ;判分是否计满99次,若未满则转L5中断返回,若满则顺序执行CLR R1 ;如果分计满99,将秒计数单元内容清0CLR 30H ;同时将分计数单元内容清0L5: MOV TH0, #3CH ; 定时器重新赋初值MOV TL0, #0B0HH RETI ;中断返回C语言参考程序:#include / 包含51单片机寄存器定义的头文件unsigned char Tab =0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /数组Tab放09的共阴极字段码

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

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