内容正文:
学习任务七 课后习题答案
1.什么是异步串行通信?它有哪些特点?
答: 所谓异步串行通信是指具有不规则数据段传送特性的串行数据传输,数据是以字符为单位传送的。
异步串行通信的数据格式
异步通信数据帧的第一位是开始位,在通信线上没有数据传送时处于逻辑“1”状态。当发送设备要
发送一个字符数据时,首先发出一个逻辑“0”信号,这个逻辑低电平就是起始位。起始位通过通信
线传向接收设备,当接收设备检测到这个逻辑低电平后,就开始准备接收数据位信号。因此,起始
位所起的作用就是表示字符传送开始。
当接收设备收到起始位后,紧接着就会收到数据位。数据位的个数可以是5,6,7或8位的数据。在字符数据传送过程中,数据位从最低位开始传输。数据发送完之后,可以发送奇偶校验位。奇偶校验位用于有限差错检测,通信双方在通信时需约定一致的奇偶校验方式。就数据传送而言,奇偶校验位是冗余位,但它表示数据的一种性质,这种性质用于检错,虽有限但很容易实现。在奇偶位或数据位之后发送的是停止位,可以是1位、1.5位或2位。停止位是一个字符数据的结束标志。
2.51系统单片机串行口由哪些功能部件组成?各有何作用?
答:AT89S51单片机的串行口吊SCON、SBUF及若干门电路构成。
SCON用于设置串行口的工作方式;SBUF用于存储串行通信时要发送的数据或已接收到的数据
3. AT89S51的串行缓冲器只有一个地址,如何判断是发送信号还是接收信号?
答:通过不同的传送指令进行区分,如果发送数据使用“MOV SBUF ,A”
如果接收数据则使用“MOV A, SBUF”
4.AT89S51的串行口有几种工作方式?各工作方式下的数据格式及率有何区别?
答:
AT89S51的串行口有4种工作方式。
方式0为同步移位寄存器方式,波特率为fosc /12
方式1为10位异步通信方式,波特率可调
方式2为11位异步通信方式,波特率为fosc /32或fosc /64
方式3为11位异步通信方式,波特率可调
5.度用查询方式编写一数据块发送程序。数据块首地址为内部RAM的33H单元,其长度为20个字节,设串行口工作于方式1,传送的波特率为9600b/s(fosc=6MHz),不进行奇偶校验处理。
答:
设波特率为9600b/s。由T1工作于方式1,fosc=6MHz,SMOD=1,求得TH1=TL1=0FDH
ORG 0100H
FIRST:MOV TMOD,#20H
MOV TH1=0FDH
MOV TL1=0FDH
MOV SCON,#40H
MOV PCON,#80H
SETB TR1
MOV RO,#30H
MOV R1,#20H
F:MOV A,@R0
MOV SBUF,A
JF:JBC TI,GG
SJMP JF
GG:INC R0
DJNZ R1,F
SJMP $
END
6.试用中断方式编写一数据块接收程序。接收缓冲区的首地越为内部RAM的30H单元,接收的数据为ASCII码,设串行口工作方式1,波特率设定为1200b/s(fosc=11.0592MHz),接收时进行奇偶校验处理,或出错则删除接收的数据。
答:
设波特率为1200b/s。由T1工作于方式1,fosc=11.0592MHz,SMOD=0,求得TH1=TL1=0E8H
ORG 0000H
LJMP MAINR
ORG 0023H
LJMP INTSE2
MAINR:MOV SP,#60H
MOV TMOD,#20H
MOV TH1,#0E8H
MOV TL1,#0E8H
MOV SCON,#50H ;串行口初始化,允许接收
MOV PCON,#00H
SETB EA
SETB ES
MOV R1,#30H ;置接收缓冲区首址
SJMP $
INTSE2:CLR RI ;清中断标志
MOV A ,SBUF ;接收数据
JNB PSW.0,RX1
JNB RB8,RERR
SJMP RX2
RX1:JB RB8,RERR
RX2:MOV @R1,A
INC R1
RETI
RERR:CLR A
SJMP RX2
END
学科网(北京)股份有限公司
$