串口工作方式

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
3
通信的硬件设计
两种通信方式的示意图
4
串口通讯硬件设计
三线连接 甲机的TXD与乙机的RXD相连, 甲机的RXD与乙机的TXD相连, 双机共地。
5
三线通讯的传输距离
与传输速率有关:速率越高,距离越近,当速 率超过1000 bps 时,最大传输距离迅速下降, 如9600 bps 时最大距离下降到只有76m?,速 率最大115200bps ?(?处请实验)
SBUF
TXD 控制门
TH1 TL1
发送控制器 TI 去串口中断
1
A
÷16 ÷2
≥1
0
T1溢出率
SMOD
接收控制器 RI
SBUF
RXD 移位寄存器
数据缓冲器、速率发生器T1,发送接收完毕标记位TI、RI 引脚RXD接收数据,TXD发送数据 时钟,各自使用时钟
15
51串口工作方式的设置
SCON (98H) SM0 SM1 SM2 REN TB8 RB8 TI RI
启动T1
TL1=0xfd; TR1=1;
}
20
串口通信的接收过程 :异步
1)开始通信时,信号线为空闲(逻辑1),当检测到 由1到0的跳变时,开始对“接收时钟”计数。
2)当计到8个时钟时,对输入信号进行检测,若仍 为低电平,则确认这是“起始位”,而不是干扰信号。
3)接收端检测到起始位后,隔16个接收时钟,对输 入信号检测一次,把对应的值作为D0位数据。若为 逻辑1, 作为数据位1;若为逻辑0,作为数据位0。
项目基本任务:双机通讯
甲方按键‘1’并向乙方发出指令,乙方播放
音乐 显示
显示
-1
--
甲机
按键
乙机 喇 叭
播放
音乐
1
扩展任务:多机通信
拓扑:总线 协议:主从式,轮询法
图 9.23 多机通信示意图Leabharlann Baidu
2
基本任务分解
• 甲机发送信息给乙机,乙机显示 • 单片机播放音乐 • 甲机控制乙机播放音乐
接 收 设10100100 1 备
0 10100100 1
间隙任意 发

0 11100110 1 0 1110011设0

13
异步的概念
异步通信是以字符(构成的帧)为单位 进行传输 字符与字符之间的间隙(时间间隔)是 任意的,即字符之间是异步的 同一字符内的各位是同步的
14
80C51的串行口
11
异步通信的数据格式 :
起 空始 闲位
一个字符帧 数据位
校停 验止 位位
空 下一字符 闲 起始位
LSB
MSB
每个字符要附加2~3位用于起止位,各帧之 间还有间隔,因此传输效率不高。
12
异步通信的基本概念
通信的发送与接收设备使用各自的时钟控 制数据的发送和接收过程。
为使双方的收发协调,要求发送和接收设 备的时钟保持一致。
SM0 SM1 00
01 10
11
工作方式 方式0
方式1 方式2
方式3
功能 8位同步移位
寄存器 10位UART 11位UART
11位UART
波特率 fosc/12
可变 fosc/64或 fosc/32
可变
16
51串口工作方式1
帧格式:10位,其中1位起始位,8位数据位,1位 停止位。 TXD为数据发送引脚,RXD为数据接收引脚 REN:接收允许控制位,REN为1允许接收
确定串行口工作方式v(oid编程initS_uCaOrt()N寄存器)
开串口中断
{ SCON=0x50;
设置T1的工作方式(E/编/0S1=0程1;1 T00M00O, 方D式寄1,存REN=1
器);
EA=1;
PCON=0x80;

计算T1的初值,装载TTMHO1D=、0xT20L; 1; TH1=0xfd;
4)再隔16个接收时钟,对输入信号检测一次,把对 应的值作为D1位数据。….,直到全部数据位都输入。
21
串口通信的接收过程 :异步
5)检测校验位P(如果有的话)。 6)接收到规定的数据位个数和校验位后,通信接口电路希望收
到停止位S(逻辑1),若此时未收到逻辑1,说明出现了错误, 在状态寄存器中置“帧错误”标志。若没有错误,对全部数据 位进行奇偶校验,无校验错时,把数据位从移位寄存器中送数 据输入寄存器。若校验错,在状态寄存器中置奇偶错标志。 7)本幀信息全部接收完,把线路上出现的高电平作为空闲位。 8)当信号再次变为低时,开始进入下一幀的检测。
方式1输出时序如下:
写入SBUF
TXD
起始 D0
D1
TI(中断标志)
D2 D3
D4
D5
D6
D7 停止位
方式1 输入时序
REN,允许串行接收位。由软件设置
REN=1,启动串行口接收数据; REN=0,则禁止接收
RXD
起始 D0 D1
D2 D3 D4 D5 D6 D7 停止位
位采样脉冲
RI(中断标志)
TTL信号系统:+5V等价于逻辑“1”,0V 等价于逻辑“0” ,对应于二进制数据
TTL电平信号被利用的最多,对于设备内 部的传输很理想:不需要线路驱动器以 及接收器 ,高速率,
7
双机通讯
通讯的收发单片机有独立的程序,独立的时钟
8
双机通讯实物
下方机按钮 控制上方机 的灯
上方机传回 数据在下方 机的灯上显 示
•接收器采样RXD引脚电平,检测到RXD引脚输入电平发生负跳 变时,则说明起始位有效,开始接收这一帧信息的其余位。
•当RI=0,且接收到的停止位为1时,将接收到的前8位数据装入 接收SBUF,并置RI=1,向CPU请求中断。
编程收发数据 -----推荐中断方式
51单片机的串口是个全双工的串口,发送数据 的同时,还可以接收数据。
当串行发送完毕后,将在标志位 TI 置 1,同 样,当收到了数据后,也会在 RI 置 1。
无论 RI 或 TI 出现了 1,只要串口中断处于开 放状态,单片机都会进入串口中断处理程序。 在中断程序中,要区分出来究竟是发送引起的 中断,还是接收引起的中断,然后分别进行处 理。
19
串行口方式1初始化
与传输线的电气特性有关:当传输线使用每 0.3m(约1英尺)有50PF电容的非平衡屏蔽双 绞线时,
传统TTL电平的传输距离1m5?以内;如果采 用电平转换,使用RS232电平进行传输,范围 15m以内
6
什么是TTL
transistor transistor logic 晶体管-晶体管 逻辑集成电路
9
串口通信软件设计
串口的工作方式1、2、3都是异步通讯 通信速率设置 发送接收数据的编程控制
10
同步通信
同步通信时要建立发送方时钟对接收方 时钟的直接控制,使双方达到完全同步。
传输数据的位之间的距离均为“位间隔” 的 整数倍,同时传送的字符间无间隙, 即保持位同步关系,也保持字符同步关 系。
相关文档
最新文档