码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【FPGA】UART通信协议


    UART通信协议

    UART ( universal asynchronous receiver-transmitter)是一种采用异步串行通信方式的通用异步收发传输器;它在发送数据时将并行数据转换成串行数据来传输,在接收数据时将接收到的串行数据转换成并行数据。UART串口通信需要两根信号线来实现,一根用于发送,另外一根接收。

    1. 协议层

    数据格式:
    UART协议一帧数据由4部分组成:

    • 起始位(1bit)
    • 数据位(6/7/8bit)
    • 奇偶校验位(1bit)
    • 停止位(1bit/1.5bit/2bit)
      在这里插入图片描述
      当处于空闲状态时,总线为高电平,表示当前无数据进行传输;要发送数据时,首先将总线拉低,然后按照数据格式以低位在前,高位在后方式进行传输,发送完后随即将总线拉高。

    这里拓展几种串口校验方式:
    无校验(no parity):不使用校验。
    奇校验(odd parity):如果数据位中“1”的数目是偶数,则校验位为“1”,如果“1”的数目是奇数,校验位为“0”。
    偶校验(even parity):如果数据为中“1”的数目是偶数,则校验位为“0”,如果为奇数,校验位为“1”。
    mark parity:校验位始终为1(不常用)。
    parity:校验位始终为0(不常用)。

    传输速率
    串口通信的速率用波特率表示,它表示每秒传输二进制数据的位数,单位是bit/s (位/秒),简称bps;
    常用的波特率有9600、19200、38400、57600以及115200等。

    2. 接口

    在UART通信中,两个UART直接相互通信,发送UART将来自CPU等控制设备的并行数据转换为串行形式,并将其串行发送到接收UART,接收UART然后将串行数据转换回接收设备的并行数据,此过程主要由2个接口完成:

    • TX - 数据发送接口
    • RX - 数据接受接口
    • GND - 接地
      在这里插入图片描述

    3. 物理层

    串口电平标准:

    • TTL电平的串口(3.3V)
    • RS232电平的串口(+5 ~ +12V为低电平,-12 ~ -5V为高电平)

    串口按电气标准分包括:

    • RS-232-C:TXD/RXD/GND、15米/9600bps
    • RS-422:TX+/TX-/RX+/RX-/GND
    • RS485:A/B/G、1200米/9600bps
  • 相关阅读:
    Apple 已弃用 NavigationView,使用 NavigationStack 和 NavigationSplitView 实现 SwiftUI 导航
    【HAL库】STM32CubeMX开发----STM32F407----ETH+LAN8720A+LWIP----ping通
    【日拱一卒行而不辍20220916】自制操作系统
    Python基础入门篇【43】--python中文件的创建与读写
    portainer管理远程docker和docker-swarm集群
    Python学习笔记 - 数据结构:元组、列表、集合和字典
    记一次Nginx代理Mysql服务的经历
    vscode代码上传到gitlab
    【Python练习】task03-math库和string练习
    WMS仓储管理系统与TMS系统整合后的优势
  • 原文地址:https://blog.csdn.net/weixin_45137708/article/details/127400647
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号