思考:
天才樱木,想用这个电路表白, 要怎么表达出I Love you?
@/"
1> UART概述
通用异步收发器:
( Universal Asynchronous Receiver/Transmitter )
属于器的一种,类似于热水器,灭火器,充电器… 了解他,玩他,造他…
USART(Universal Synchronous Asynchronous Receiver Transmitter)
通用同步/异步收发器
STM32F407:
数量 | 串口 | 总线 |
---|---|---|
2 | USART1, USART2 | APB2 |
4 | USART2, USART3,USART4,USART5 | APB1 |
硬件模型:
特性描述:
条目 | 内容 |
---|---|
传输方式 | 串行 |
传输方向 | 全双工 |
同步方式 | 异步 |
传输速率 | 常用波特率: 9600bit/s,115200bit/s |
2> UART通讯协议
2.1> 工作时序
2.2> 数据格式
位段 | 内容 |
---|---|
空闲位 | TX保持高电平 |
起始位 | TX由高变低,保持=1bit位宽 |
数据为 | 5~8位ASCII的编码数据 |
校验位 | 校验方式:奇校验 / 偶校验 |
停止位 | TX由低变高,保持>=0.5bit位宽 |
2.3> 奇偶校验
奇校验:发送方,根据数据位中1个数,在校验位,填1/0,使1个数为【奇】数;
偶校验:发送方,根据数据位中1个数,在校验位,填1/0,使1个数为【偶】数;
接收方根据校验位,判断数据,防止错数据;
数据格式,8N1: 8位数据位,无校验位,1位停止位
思考,如果数据错>=2位时,奇偶检验,就会校验无效,所以应用中很少使用;
CRC(Cyclic Redundancy Check):循环冗余检验,应用较多
3> UART 硬件模型
3.1> 硬件方框图
拓展参考:《Verilog HDL 高级数字设计 第二版》 7.4节
3.2> UART硬件抽象图
思考 ,你如何安排7个32位寄存器的功能,能更加灵活运用USART?
4> 硬件电路
CH340G:USB转串口芯片;
5> 过采样
采样频率是数据传输波特率的8倍,或16倍;判读中间3个值,使接收到的数据更准确