
前言
完整的硬件产品是由多种模块组合实现产品功能的,微控制器 MCU 充当大脑,外围的存储单元、显示单元、发声单元、传感器单元、运动单元等等是其躯干和四肢,而不同类型的硬件单元需要有机的结合起来,就离不开相互之间的数据通信,电子工业经过了百余年的发展,衍生出了繁多的协议,其中既有行业公认的标准协议,也有企业自研的内部标准,这些协议通常可以分为并行通信协议和串行通信协议。
- 并行通信,在同一时刻发送多位数据(可以是多根线)。优点是发送速度快;缺点是传输距离短 资源占用多。
- 串行通信,用一根线 在不同的时刻发送8位数据。优点是传输距离远 占用资源少;缺点是发送速度慢。

通信的方式可以分为:全双工、半双工、单工
- 单工通信 只能接受或者发送 收音机 遥控器,一般只有一根线
- 半双工通信 在同一时刻只能发送或者接收 对讲机,至少有两根线
- 全双工通信 在同一时刻 既能接收又能发送 电话,至少有两根线

根据是接收端和发送端时钟频率的异同又可分为同步通信和异步通信,本章将简单介绍主流的一些硬件通信协议。
SPI 协议
协议概括
SPI是串行外设接口(Serial Peripheral Interface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今主流的微控制器都集成有spi接口,如 stm32 家族。
通信原理
SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。
- SDI – SerialData In,串行数据输入;
- SDO – SerialDataOut,串行数据输出;
- SCLK – Serial Clock,时钟信号,由主设备产生;
- CS – Chip Select,从设备使能信号,由主设备控制。


本文介绍了主流硬件通信协议,包括SPI、I2C、CAN、USB和UART协议。阐述了并行和串行通信的特点、通信方式分类,以及同步和异步通信。详细说明了各协议的概括和通信原理,还提及可通过逻辑分析仪采集总线数据。
最低0.47元/天 解锁文章
7078

被折叠的 条评论
为什么被折叠?



