ARM架构下的UART通用异步收发器

张开发
2026/5/22 20:50:33 15 分钟阅读
ARM架构下的UART通用异步收发器
在之前我们了解过了51这种经典架构下的UART它采用了固定的两个引脚进行数据的发送与接收今天我们来了解一下ARM架构下更为复杂的UART首先我们还是先来了解一下UART的基本概念1.UART基本概念UART通用异步串行全双工的通信方式通用性此模块适用于多种异步串行的数据发送格式0通信嵌入式系统中的通信是指两个或两个以上的主机之间的数据互交这里的主机可以是计算机也可以是嵌入式主机甚至可以是芯片独立的设备之间进行通信这里我们对于这几个关键字具体进行展开了解1.异步与同步异步数据在进行收发时需要遵循协议约定好接收与发送的的速率UART不需要时钟线因为协议已经规定好了发送速率同步时钟线脉冲波通过高低电平来协调发送与接收的同步通信高电平改变数据线低电平读 取数据线只需要特点的时钟脉冲频率就可以实现收发数据功能2.串行与并行串行一根数据线进行数据的收发一个字节一个字节发送数据特点1. 引脚占用少不占用额外引脚资源高性能SOC系统引脚资源极为稀引脚功能复用并行通过多跟数据线同时进行数据收发一次可以发送多个字节数据特点1.数据传输速率快2.引脚资源占用太大实例AHB先进的高速总线内含32根数据总线32根地址总线发送指针数据进行数据或者 存储 器寻址若干控制总线RAM需要与和内核快速进行数据交换3.单工半双工全双工· 单工只有一根单向数据线数据接收与发送永远都是固定的· 半双工只有一根数据线同一时刻有以一方接收数据或者发送数据但数据的接收方与发送方可改· 全双工有两根数据线同一时刻两方既可以发送数据也可以接收数据发送数据协议格式例115200 N 8 1 -波特率115200-N无校验若奇校验校验位为1数据位数据1 位一定为偶数个若不为偶数个则校验失败- 8数据位- 1停止位针对不同的通信距离我们有着不同的高低电平的标准通信距离板件通信时高电平信号在导线传输过程中导线存在内阻需要分压高低电平会在导线间发生衰减电器标准1.TTL标准适用于板件通信通信距离厘米级别2.RS232 标准负逻辑适用于独立设备通信负逻辑可增强一定的抗电磁干扰的作用通信距离米级别、3.RS485 标准 差分信号适用于较远距离通信半双工通信只有一组信号线用电压差决定高低电平抗干扰能力及其强悍可以接中继器理论上可以达到无穷远的传输距离接下来介绍一下UART的一些初步功能的实现这里可以利用我们的串口调试助手来进行数据的收发可以利用这个函数进行向串口调试助手的数据的收发当我们引入stdio标准库时我们可以将库函数printf 和 scanf 实现在我们的串口调试助手上因为这些库函数本质上都是对我们编写的发送函数与接收函数模板的调用

更多文章