STM32通信协议

STM32通信协议


STM32通信协议


一、通信相关概念

通信接口

通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统

通信协议:制定通信的规则,通信双方按照协议规则进行数据收发


二、通信协议引脚作用

USART:

TX是数据发送脚

RX是数据接收脚

I2C:

SCL是时钟

SDA是数据

SPI:

SCLK是时钟

MOSI是主机输出数据脚

MISO是主机输入数据脚

CS是片选用于指定通信的对象

差分数据脚是用两个引脚表示一个差分数据(USB CAN)

USB:DP(也叫D+)DM(也叫D-)

CAN与USB的两个引脚是组成一根线的

即DP(也叫D+)DM(也叫D-)是一根线,CAN_H与CAN_L是一根线


三、通信方式

全双工 指的是通信双方能够同时进行双向通信(所以一般这种通信方式都有2根通信线)
半双工 指的是通信双方数据可以在两个方向上传送,但通信双方不能同时收发数据,这种传送方式就是半双工制
单工 的数据传输是单向的。通信双方中,一方固定为发送端,一方则固定为接收端。信息只能沿一个方向传输,使用一根传输线。如把USART的RX去掉就变成单工了,智能发送


四、采样方式

SPI I2C有单独的时间线所以是同步的,接收数据可以在时钟信号的指引下进行采样

USART和USB和CAN没有单独的时间线,需要双方预定一个采样频率来进行采样,并且需要加入帧头帧尾来进行采样位置的对齐


五、电平信号

单端指的是引脚的高低点平对GND的电压差,所以单端通信的双方必须接地

即USART I2C SPI想要通信必须还得用一根线接地

差分指的是两个差分引脚的电压差传输信号,通信的时候可以不需要GND

但是USB协议有些部分需要需要单端信号,所以USB有时候也需要接GND

差分信号可以极大提高抗干扰特性,所以差分信号一般传输速度和距离都很高,性能也不错


六、通信对象

I2C和SPI和CAN可以在总线上挂载很多设备,需要寻址过程,知道通信的对象


END

相关推荐
智能物联实验室34 分钟前
如何低门槛自制Zigbee 3.0温湿度计?涂鸦上新开发包,开箱即用、完全开源
嵌入式硬件·开源·硬件工程
淘晶驰AK1 小时前
51单片机与stm32单片机,先学习哪一个?
stm32·单片机·51单片机
躺不平的小刘1 小时前
从YOLOv5到RKNN:零冲突转换YOLOv5模型至RK3588 NPU全指南
linux·python·嵌入式硬件·yolo·conda·pyqt·pip
Moonnnn.2 小时前
【51单片机学习】AT24C02(I2C)、DS18B20(单总线)、LCD1602(液晶显示屏)
笔记·单片机·学习·51单片机
wind_one13 小时前
项目:电动车报警器
stm32·单片机·嵌入式硬件
网易独家音乐人Mike Zhou3 小时前
【Python】圆柱体内部3D点云仿真及ply文件生成,圆形3D点云检测及拟合算法
stm32·单片机·mcu·物联网·算法·点云·iot
qq_411262424 小时前
大小端对SPI和QSPI显示的影响
单片机·嵌入式硬件
白书宇5 小时前
12.从零开始写LINUX内核--控制台初始化
linux·c语言·驱动开发·嵌入式硬件·microsoft·iot
✎ ﹏梦醒͜ღ҉繁华落℘6 小时前
单片机学习---字节对齐
单片机·嵌入式硬件·学习
CC呢6 小时前
基于单片机坐姿视力保护台灯
单片机·嵌入式硬件·坐姿视力保护灯