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

上传人:壹****1 文档编号:459551707 上传时间:2023-05-30 格式:DOCX 页数:12 大小:197.17KB
返回 下载 相关 举报
第06章-单片机串行通信系统-习题解答_第1页
第1页 / 共12页
第06章-单片机串行通信系统-习题解答_第2页
第2页 / 共12页
第06章-单片机串行通信系统-习题解答_第3页
第3页 / 共12页
第06章-单片机串行通信系统-习题解答_第4页
第4页 / 共12页
第06章-单片机串行通信系统-习题解答_第5页
第5页 / 共12页
点击查看更多>>
资源描述

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

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

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

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

4、M0D/64)Xfosc=fosc/32当SM0D=0寸,波特率=(2SM0D/64)Xfosc=fosc/64计算定时器的初值计算:SMOD f256 OSC32 12 B256?smodfosc384 B4 .若fosc=6MHz,波特率为2400波特,设SMOD=1则定时/计数器T1的计数初值为多少?并进行初始化编程。答:根据公式N=256-2SMODKT4L17 E 54 3 2m 11.11 Im p p pp p pppTEXT-P3 7/EDP3.5J1 p;皿 PS.31NTI P3.2rtMT0的 1JTYD P3.CJRXDPSEtL声LEA:3.1AD0.71295,17

5、 16三1.;12iT-iyU1vccAR5 2XF雨-R? ZMRLED发光二极管从左到右循环点亮的C51参考程序:#include /包含51单片机寄存器定义的头文件#include /包含函数_nop_ ()定义的头文件unsigned char code Tab=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe; 码,该数组被定义为全局变量 sbit P17=P1A7; void delay(void) unsigned char m,n;for(m=0;m200;m+) for(n=0;n250;n+)流水灯控制/* 函数功能:发送一个字节的数据*/vo

6、id Send(unsigned char dat)P17=0; /P1.7引脚输出锁存信号,对cd4094锁存nop (); 延时一个机器周期_nop_();/延时一个机器周期,保证锁存完成P17=1;/结束对cd4094的锁存SBUF=dat;/将数据写入发送缓冲器,启动发送while(TI=0)/若没有发送完毕,等待JTI=0;/发送完毕,TI被置“1”,需将其清0/*函数功能:主函数*/voidmain(void)unsignedchari;SCON=0x00;/SCON=00000000B,使串行口工作于方式0while(1)for(i=0;ihr3R1470R81&1D112-R2

7、 1 L-o P004 R2 470R11门 P015 R3 470R|1jL P026R41_470R口 DnQ1_q P0310R5 k470R3_10r1P P04HR6 t_470R0D71lIP12 R7470R121. P061W1374164U39nr SRG8C C1/- nr3 R8470RpL _ 二Q P1081&1D2, R9470R-41|-口 P145 R10470R_5I1p P12C d d 11U P126 R11470R6r1n. p-i/i10 R12 1470R -10_T-0 P1411 R13 _470R_11tLc P1512 R14470R121

8、1_n P161374164VCCP10OP11g P12Q P13fi- P140 P15fi- P16Q-DS1图6-9中用AT89C51单片机串行口扩展2个并行口,接2位数码管组成显示电路。串行口工作于方式0,与外dt产2mm哪行7拈1641tfF74LS164是一个8位串入并出的移位寄存器,功能是接收AT89C51单片机串行通信口输出的串行数据并转换成并行数据输出,从而驱动LED数码管显示。74LS164的1、2脚为数据输入端,接单片机串行口的RXD端(P3.0脚),74LS164的第8脚为时钟脉冲输入端(CLR,接单片机串行口的TXD端(P3.1脚),第9脚R为清零端,低电平清零,正

9、常工作时接高电平。两只LED数码管采用共阴极静态显示方式。下列程序实现串行两位LED数码管时间显示,显示范围为0099分钟。使用串行口进行信息传送,程序编写相当简单,用户只需将需要显示的数据直接送串口发送缓冲器,等待串行中断即可。汇编语言参考程序:ORG0000H;在0000H单元存放转移指令LJMPNAIN;转移到主程序ORG000BH;定时器T0的中断入口地址ORG 0200H;MAIN: MOV TMOD,#01H ;MOV TH0, #3CH ;MOV TL0, #0B0HHMOV R0,#0;SETB EA;SETB ET0;SETB TR0 ;LOOP: LCALL Display

10、 ;SJMP LOOP主程序从0200H 开始使用定时器T0, 工作方式1置初T0 值 50ms用于存 1 秒的计数次数开中断总允许允许T0 中断启动计时循环调用显示子程序09 的共阴极段码TAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDISPLAY:;显示子程序(显示分钟)MOVDPTR,#TAB;将表首地址赋给DPTRMOVA,30H;将30H中存放的分计数赋给累加器AMOVB,#0AH;将10赋给累加器BDIVAB;分计数除以10得十位数放在A中,个位数放在B中MOVXA,A+DPTR;查表得十位数的显示段码MOVSBUF,A;发送十位数L1:JBCTI,L2;判是否发送完,未发完循环等待,若发完则转L2SJMPL1L2: MOV A, B将个位数赋给累加器AMOVXA,A+DPT

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

当前位置:首页 > 商业/管理/HR > 市场营销

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