一、UART(串行通信)驱动编程
1.基本概念
通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART,是一种串行异步收发协议,应用十分广泛。UART工作原理是将数据的二进制位一位一位的进行传输。在UART通讯协议中信号线上的状态位高电平代表’1’低电平代表’0’。当然两个设备使用UART串口通讯时,必须先约定好传输速率和一些数据位。
2.串行通信按传输方向来定义的传输方式:单工/半双工/全双工
3.串行接口标准
RS232
电气特性 (EIA(RS232)电平)
逻辑0 +3~+15v
逻辑1 -3~-15v
机械特性
传输距离 <10m
只能做1对1通信
RS485:工业现场
传输时使用差分信号
传输距离可以超过1000m
可以做1对多通信
TTL电平(用于计算机内部)
逻辑0: 低电平 <0.7v
逻辑1: 高电平 >2.4v
4.数据传输协议
空闲状态为高电平
发送时首先是一个起始位(一个周期的低电平)
发送数据时从LSB(最低值的比特位)开始发送
每帧中数据位的个数5~8bit (变化)
发送可能存在的1bit奇偶校验位 (变化)
发送1~2bit的停止位(高电平)(变化)
波特率: bps(bit per second)(变化)
具体操作流程:
1、电路原理图 (为找到UART对应的管脚)
PC_TXD1 <------ UARTTXD0<------GPIOD18
PC_RXD1 <------ UARTRXD0&l