180 likes | 460 Views
并行. 串行. 串行. 并行. 串行. 通 信. 串行. 1 位. 第九章 MCS-51 串行接口. 9.1 串行数据通信概述 一、并行通信和串行通信. 串行通信. 数据是一位一位传送的. 优点: 传输线少,连线简单. 缺点: 速度慢. 适用于远距离 或数据量少的通信. 网络. 鼠标. 打印机. 计算机. RS232. USB. 扫描仪. 硬盘. 常见的串行通信接口 :. I 2 C SPI. 并行、 串行接口的应用?. 1 00 11111. H. 10011111. 10011111. 8 位. 数据.
E N D
并行 串行 串行 并行 串行 通 信 串行 1位 第九章MCS-51串行接口 9.1 串行数据通信概述 一、并行通信和串行通信 串行通信 • 数据是一位一位传送的 • 优点:传输线少,连线简单 • 缺点:速度慢 • 适用于远距离 或数据量少的通信
网络 鼠标 打印机 计算机 RS232 USB 扫描仪 硬盘 常见的串行通信接口: I2C SPI 并行、 串行接口的应用?
10011111 H 10011111 10011111 8位 数据 L 计算机 并行 外设 选通 如何实现串行通信? 有二个问题需要解决 1、如何区分一位? 1001 1111 →1001 1111 2、如何将一串0和1还原成数据? 1001 1111 →1111 1001
二、串行传输方式 1位数据 10011111 10011111 计算机 1 2 3 4 5 6 7 8 外设 同步时钟 接收速率 发送速率 1位数据 计算机 外设 异步传输 同步传输和异步传输 高位先送 同步传输 靠发送和接收速率相同来保证 比特率:位/秒(bps) 波特率:码元/秒(Baud)
如何将一串0和1还原成数据? 如何区分数据的起始? 1、同步通信方式
2、异步通信方式 异步通信协议: (1)没有数据发送时,数据线保持“1”状态 (2)发送数据时,先发起始位“0”,其后是数据 (3)数据后再发一位停止位“1“ 因此对于8位数据至少要发送10位 例:若比特率为9600bps,则每传输960帧,即960字符/秒 而每位传输时间:T=1/9600≈0.104(ms)
同步头 数据 计算机 外设 异步传输 解决了传输一个字节的同步问题, 如何组成一组数据的传输? 7E 7D5E 7D 7D5D PPP协议中
单工:广播 双工:电话 半双工:对讲机 3、单工、双工、半双工方式
8 并-串 时钟 1 时钟 8 串-并 发送 接收 4、串行通信接口 (1)UART (Universal Asynchronous Receiver/Transmitter 通用异步接收器/发送器 (2)USRT(Universal Synchronous Receiver/Transmitter) 通用同步接收器/发送器
公用电话网 计算机 Modem Modem 计算机 RS232C RS232C 5、RS-232C标准 美国电子工业协会EIA公布的串行总线标准 DB-25 最少3根线 RxD (3) TxD (2) 地 (5) DB-9 -15V:逻辑1 +15V:逻辑0 6、调制解调器
发送SBUF(99H) TI TxD 内部DB 接收SBUF(99H) 输入移位寄存器 RI RxD 9.2 MCS-51串行接口 51单片机内部有一个全双工的串行接口,具有4种工作方式。 与串行口有关的特殊功能寄存器(SBUF、 SCON) 一、串行口数据绶冲器SBUF(99H) 接收、发送对应于同一地址(99H),但实际上是两个绶冲器。
SM0 SM1 工作方式 功 能 简 述 波特率 0 0 1 1 0 1 1 0 方式3 方式0 方式1 方式2 8位 同步移位寄存器 11位 UART 10位 UART 11位 UART fosc/32或/64 fosc/12 可变 可变 二、串行口控制寄存器SCON(98H) 1、SM0、SM1 控制串行口方式 2、SM2 允许方式2、3的多机通讯特征位 在方式2、3中若SM2=1→表示接收的第九位数据(RB8)为0时不激活RI。 在方式1中若SM2=1→只有收到有效的停止位时才会激活RI。 在方式0中SM2必须为0。
3、REN 允许串行接收位,由软件置/复位 1:允许接收 0:不允许接收(允许发送) 4、TB8 在方式2、3中要发送的第九位数据,由软件置/复位 5、RB8 在方式2、3中是接收的第九位数据 在方式1中若SM2=0,RB8是接收的停止位。 在方式0中不用RB8。
1 RI=1 RxD 1111 1111 SBUF 6、RI 接收中断标志(必须由软件清除) 在方式0中串行接收到第8位结束时自动置位。 在方式1、2、3中串行接收到停止位的中间时置位。 1 1 1 1 1 1 1 7、TI 发送中断标志(必须由软件清除) 在方式0中串行发送第8位结束时自动置位。 在方式1、2、3中串行发送停止位的开始时置位
89C51 RxD D 74LS164 TxD CP 9.3 MCS-51串行接口应用举例 一、方式0的应用 1、扩展并口(P232) ROLED: MOV SCON, #00H CLR ES MOV A, #80H LED: MOV SBUF, A JNB TI, $ CLR TI ACALL DELAY RR A AJMP LED RET
7 6 5 4 3 2 1 0 P3.4 15 14 13 12 11 10 9 8 P3.5 74LS164 8051 2、串行显示和键盘接口(补充材料) • 1-6检查有否键按下 • 7-9判是否抖动 • 10-13置哪个键按下初值 • R7=08H一排是8键,循环8次 • R6=FEH是先判右边键 • R3=00H键值初值,键值即为键号
二、方式1的应用(甲、乙通信(P233)) • 一位起始位(0),8位数据,一位停止位(1),共10位 • 发送:写数据到SBUF后,立即开始发送,发完后置“1” TI • 接收:接收完,将8位数据送入SBUF,同时后置“1” RI • 接收或发送速率由波特率确定 X=256-fosc•2smod/384 •波特率
并行 8位 数据 打印机 计算机 选通 状态 并行通信 • 一次传送多位数据,如8位 • 优点: • 速度快 • 缺点: • 传输线多 • 适用于近距离大数据通信