| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【记录】嵌入式经典通信UART理解 -> 正文阅读 |
|
[嵌入式]【记录】嵌入式经典通信UART理解 |
目录? ? ? ? UART简介通信基础—USART和UART区别通信基础—同步通信和异步通信通信基础—并行通信和串行通信通信基础—单工通信和双工通信通信基础—比特率UART帧格式UART硬件连接UART控制器UART简介UART(Universal Asynchronous Receiver Transmitter)即通用异步收发器,是一种通用的串行、异步酒信总线该总线有两条数据线(一条数据线用于发送TXD,另一条数据线用于接收 RXD),可以实现全双工的发送和接收在嵌入式系统中常用于主机与辅助设备之间的通信。 通信基础—USART和UART区别USART:通用同步和异步收发器 UART:通用异步收发器 当进行异步通信时,这两者是没有区别的。区别在于USART比UART多了同步通信功能。 这个同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。 通信基础—同步通信和异步通信同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。 异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。 同步是阻塞模式,异步是非阻塞模式。 通信基础—并行通信和串行通信并行通信:一次性传送一个字长的数据。 串行通信:一般来讲数据线只有一根,一位一位的传输数据。 并行:通信速度快,但是使用总线多,浪费资源,同时布线难度大,而且多条总线容易产生信号干扰。 通信基础—单工通信和双工通信单工通信:只能单向传送信息。 双工通信:能实现双向传送信息。 ??? 1.半双工:单个芯片发送和接收只能实现一个,不能同时。 ??? 2.全双工:单个芯片发送和接收能同时实现。 如果总线数据线只有一根就是半双工,数据线有两根就是全双工。 通信基础—比特率比特率用于描述UART通信时的通信速度,其单位为bps(bit per second)即每秒钟传送的bit的数量。 UART帧格式高电平代表1,低电平代表0。 比如要发送0X55,转换为2进制的话就是要发送01010101。在空闲时数据线处于高电平。 起始位,代表发送数据开始,为低电平。 数据位发送时,先发送低位,后发送高位(可以发送5-8位,一般发送8位,因为1字节=8bit)即10101010。 校验位用来校验接收与发送是否一致。串口当中最常使用的是奇偶校验,比如01010101中1的个数是偶数,因此校验位就写个1,接收到的如果发现校验位是0,即奇数,就说明发生了错误。校验位只能去校验有没有错误产生,但不能进行修正。校验位可有可无,使用校验位会使通信速度降低,但是准确性提高。 停止位表示一次通信的结束,为高电平。 如果要发送多个字节,必须接收到上一个发送数据的停止位才可以,即每次最多允许一个字节发送,原因:避免产生累积误差。 UART硬件连接A的发送器对应B的接收器;A的接收器对应B的发送器。 UART控制器一般情况下处理器中都会集成UART控制器 我们使用UART进行通信时候只需对其内部的相 关寄存器进行设置即可。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 21:25:30- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |