【嵌入式】STM32通讯方式
按传输的数据位区分
串行通讯: 设备间通过少量数据信号线(一般8根以下),地线以及控制信号线,按照数据位一位一位的传输数据的方式叫做串行通讯。看名字也能看出,串行就是按位一个一个的串行通过,类似于单人通道。
并行通讯: 一般指使用8/16/32/64根或者更多的数据线进行数据传输的通讯方式,同一时刻可以传输多位数据。可以理解为并排通过的大马路。
以信道方向区分
全双工: 在同一时刻,两个设备间可以同时收发数据。(双向、同时)
半双工: 两个设备之间可以双向收发数据,但是同一端不能在同一时刻的既收数据又发数据。(双向、不同时)
单工: 任何时刻,数据只能单向流通,固定一端收,一端发。(单向)
根据时钟信号区分
同步通讯: 收发双方至少一根信号线一根数据线,在时钟信号的驱动下,双方同步数据,通讯双方会统一规定在时钟信号上升沿或者下降沿对数据采样。
异步通讯: 不使用时钟信号同步数据,不使用信号线,直接在数据中加入用于同步的信号位,以数据帧的格式传输数据,有时候还要约定收发双方的传输速率。一般数据帧格式为(起始位+数据+校验位+结束位)。
通讯的速率
比特率: Bitrate,每秒钟传输的二进制位数,单位是bit/s。
波特率: Baudrate,每秒钟传输的码元数量。码元是通讯信号调试的一个概念,通讯中常用时间间隔相同的符号来表示一个二进制数字,这样的信号称为码元。比如,常用的0V电压表示二进制0,5V电压表示二进制1,那么一个码元可以表示0和1两种状态,此时,一个码元相当于1个bit位。如果用0V电压表示00,2V电压表示01,4V电压表示10,6V电压表示11,那么每个码元有四种状态,相当于两个bit位,这时候,波特率是比特率的1/2。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了