基础知识
- 串行通信又称为通用异步收发器(Universal Asyn-chronous Receiver-Transmitters,UART) 或者 串行通信接口(Serial Communication Interface,SCI)
- 一般需要三根线:
- 发送线(TxD)
- 接收线(RxD)
- 地线(GND)
- 数据以字节为单位发送,按位的顺序从一条线发送
- 串行通信分为:
- 异步通信:在一个字节数据发送完成后,发送停止位***,若继续发送下一个字节则需要重新发送开始位*
- 同步通信
波特率
位长: 位的持续时间,倒数为单位时间内传送的位数
波特率: 每秒钟内传送的位数
奇偶效验
1. 奇校验检查
字符数据中1的数目为偶数,检验位为1,否则为检验位为0
例如:字符数据
1010010中,使用奇检验,则检验位为0;偶检验则为1
TTL电平(Transistor Transistor Logic)
1 和 0 的特征电压分别为 2.4V 和 0.4V (在3V供电的MCU,特征值有变动)
UART 的寄存器
- 波特率寄存器:设置波特率
- 控制寄存器:设置通信格式、是否校验,可能存在多个
- 状态寄存器:是否有数据可收、数据是否发送出去,可存在多个
- 数据寄存器:存放发送和接收的数据,只有一个
.>
//初始化函数:确定串口、波特率
void uart_init(uint_8 uartNo,uint_32 band_rate)
//发送单个字节
uint_8 uart_send1(uint8_uartNo,uint_8 ch)
//发送多个字节
uint_8 uart_sendN(uint_8 uartNo,uint_16 len,uint_8* buff)
SPI 串行外设接口(同步)
SPI 一般使用4根线
- 串行时钟线 SCK
- 主机输入/从机输出数据线 MISO
- 主机输出/从机输入数据线 MOSI
- 从机选择线 SS‾\overline{SS}SS(Slave Select).接到主机的
I/O输出线,低电平选中从机;主机的SS‾\overline{SS}SS则接高电平
本文介绍了串行通信的基础知识,包括UART(通用异步收发器)的工作原理、所需的三条线路(发送线、接收线和地线)、数据传输方式、异步和同步通信的区别。还讲解了波特率的概念,奇偶效验的作用,以及TTL电平标准。此外,提到了UART的寄存器结构和初始化函数,并对比了UART与SPI接口的区别。
1722

被折叠的 条评论
为什么被折叠?



