首页 > 其他分享 >串口通信协议学习记录

串口通信协议学习记录

时间:2024-08-23 16:24:45浏览次数:16  
标签:USART 记录 UART 通信协议 通信 电平 传输 串口

        在日常使用中,我们往往接触的较多的是UART(Universal Asynchronous Receiver Transmitter:通用异步收发器),即日常说的串口,该总线有两条数据线:发送数据TXD(Transmit Data)和接收数据RXD(Received Data),在使用中,我们线路连接图如下:

注意:信号的传输建立在一个公共的基准上,而这个基准往往是GND,所以在通信时需要共地,这个常识往往被忽略。

1、UART帧格式

起始位:为低电平时,表示数据帧开始。

数据位:可由5~8位组成,通常传输8位也就是一个字节,传输规律是:先传输低位后传输高位。

奇偶校验位:用于判断数据传输是否正确,1表示偶校验,0表示奇校验。如果不需要则数据帧全是有效数据,如果需要则数据帧最后一位是奇偶校验位

        奇校验:若数据位中,1的个数为奇数,则校验位为0,反之为1。

        偶校验:若数据位中,1的个数为偶数,则校验位为0,反之为1。

停止位:可以是1位、1.5位、2位,通常都为高电平表示数据传输停止

波特率:用于衡量串口传输速率的大小,表示每秒钟传输的位数

        例如:假设波特率为115200,则1s传输的数据量为115200个bit。

        每个bit传输的时间:1s/115200 ≈ 8.68us,也就是串口波特率为115200时,每个bit传输间隔为8.68us。

2、数据传输和原理解析

        关于数据传输和原理解析,我们举个例子,假设传输的数据为以下八位:

 计算得出这八位二进制代表的十进制数:2+16+64 = 82

通过查询ASCII码表可以发现,十进制 82 表示 字符 R

通过以上的例子分析,我们可以加深对串口传输的方式的理解。

3、串口通信常见注意事项

一般MCU使用的是TTL电平进行数据发送和接收,而外部设备比如笔记本采用的是USB等电平

因此想要MUC和笔记本通信,则需要电平转换芯片将TTL电平转换为USB电平,常见的TTL转USB模块:CH340

TTL电平标准:高电平通常被定义为+2.4 V至5 V的电压范围,而低电平则为0 V至0.4 V

4、串口通信的优缺点

缺点

‌1、通信速度较低‌:因为每次只能传输一位数据,所以传输速度比较低。与以太网相比,串口通信的速度存在明显差距,一般只适合低速率和小数据量的通信‌

2、只能进行短距离传输‌:串口通信只能在短距离内传输数据,且只能用于传输点对点的数据,这限制了其在某些应用场景的使用‌

3、不可靠性‌:由于UART是异步通信,可能会受到噪声和干扰的影响,导致数据传输不可靠‌

优点节省传输线,这是显而易见的。尤其是在远程通信时,此特点尤为重要。这也是串行通信的主要优点。

5、UART和USART

        USART:(universal synchronous asynchronous receiver and transmitter)通用同步异步收发器。

 区别:

1、一般而言名为UART的接口只能进行异步串行通讯,而USART既能进行同步串行通讯,也能用于异步串行通讯,这意味着USART可以像SPI一样工作,适用于需要同步通信的场景。‌

2、USART的数据传输速度通常比UART更快,因为它可以使用更高的波特率进行数据传输,并且不需要起始位停止位。‌

3、USART比UART更复杂,因为它需要更多的控制选项,如硬件流控制和双向通信。

4、UART硬件连接相对简单,通常使用三根线:TX(发送端)RX(接收端)地线(GND)USART则需要额外的时钟信号线(XCK),并且在某些情况下还需要方向信号线(XDIR)

标签:USART,记录,UART,通信协议,通信,电平,传输,串口
From: https://blog.csdn.net/qq_63466036/article/details/141220144

相关文章

  • CH340C芯片 串口通信
            CH340C是一种芯片‌,具体来说,它是CH340系列中的一款芯片,属于USB转串口芯片。这种芯片的主要功能是通过USB接口将计算机与外部硬件设备连接起来,实现通信。CH340C说白了就是电平转换芯片        可以将串口电平信号转换为USB信号    ......
  • ctfhub-rce-部分做题记录
    命令注入检查网页显示内容,可以直接看到源代码。大致意思是:检查用户输入的GET请求,判断用户是否输入了ip信息。如果输入了ip信息,则使用用户输入的这个ip数据执行一个shell命令"ping-c4"。输入127.0.0.1;cat104211044913917.php没回显,查看源代码过滤cat输入......
  • Ctfhub-SSRF部分做题记录
    Ctfhub-SSRF部分做题记录上传文件提示:这次需要上传一个文件到flag.php了.祝你好运进入flag.php发现没有提交按钮修改源代码,加个提交按钮抓包修改host为127.0.0.1:80,乱码改成1111(随便,只要不是乱码)PHPimporturllib.parsepayload=\"""POST/flag.phpHTTP/1.1Host......
  • STM32学习记录-05 -1-TIM定时中断
    1TIM简介TIM(Timer)定时器定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断(如在STM32中主频为72MHz,计72个数即1MHz也就是1us,计72000个数即1KHz也就是1ms)16位计数器、预分频器(对计数器的时钟进行分频)、自动重装寄存器(计数的目标值,计多少个时钟申请中断)的时基单......
  • STM32学习记录-05 -2-TIM输出比较
    1输出比较简介OC(OutputCompare)输出比较输出比较可以通过比较CNT与CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形每个高级定时器和通用定时器都拥有4个输出比较通道高级定时器的前3个通道额外拥有死区生成和互补输出的功能2......
  • YOLOv5实战记录 Gradio搭建Web GUI
    转自:https://blog.csdn.net/EmileJiao/article/details/137448176最终的:importtorchimportgradioasgrmodel=torch.hub.load("./","custom",path="runs/train/exp2/weights/best.pt",source="local")title="基于Gradio......
  • 得帆中台数据中spark sql和hive sql的效率差异记录
    在数据处理方面,sparksql的处理速度优于hivesql场景1:在数据条数为491条时,使用sparksql和hivesql在中台处理的时间,分别用时9s和55s//使用的SQL语句SELECTYEAR(update_time)ASyear,month(update_time)asmonthFROMdwd_tb_customer_store_appraiseWHEREYEAR(......
  • npm install 报错解决记录
    引言在使用Node.js和npm(NodePackageManager)进行项目开发的过程中,经常会遇到npminstall命令执行失败的情况。本文将总结一些常见的错误类型及其解决方案,帮助你在遇到这些问题时能够快速定位并解决问题。1.错误类型及解决方案1.1EACCES错误错误示例:1npmERR!pat......
  • 因时五指灵巧手的学习测试记录
    文章目录前言一、五指灵巧手的硬件结构和通讯协议二、通过上位机测试软件测试五指灵巧手性能1.上位机软件与灵巧手硬件连接2.上位机软件测试灵巧手设备二、通过虚拟机测试五指灵巧手的问题记录二、通过ubuntu系统测试五指灵巧手性能总结前言熟悉了解五指灵巧手的硬......
  • STM32学习记录-04-EXTI外部中断
    1中断系统(1)中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行(2)中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源(3)中断嵌......