当前位置: 代码迷 >> 综合 >> (UART/SPI/IIC) 与 (WIFI/蓝牙/Zigbee) 与 (TCP/IP/UDP)等协议精讲
  详细解决方案

(UART/SPI/IIC) 与 (WIFI/蓝牙/Zigbee) 与 (TCP/IP/UDP)等协议精讲

热度:60   发布时间:2023-12-26 22:25:59.0

这三块内容有相同的地方,也有不同的地方,使用过程中密不可分。

就一块单片机来讲:

其板子上主控芯片(MCU)和其他芯片之间,通信属于用的是UART、SPI、IIC等协议,如:因为MCU内存不够扩展一个外部Flash可以用SPI协议,看外部Flash芯片的要求。但是主控芯片和wifi模块通信也可以UART,只需要链接四根线(TXD、RXD、电源线、地线),其中TXD、RXD是主控芯片和WiFi模块的连线,他们之间可以通信,用的协议是UART。

当WiFi模块被MCU控制后,连入此WiFi的其他设备就可以继续其他操作了,其他设备与wifi模块的通信属于wifi协议。(蓝牙和Zigbee同理)(市面上WiFi模块(如ESP8266)使用之前可以用AT指令配置好,然后MCU可以正常控制它。)

TCP/IP/UDP属于上位机通信,大都用在纯软件通信上面,他们有一个协议栈,如图:
在这里插入图片描述

比如设备与设备之间连接的时候,使用TCP/IP协议时,只需要知道IP地址和端口就可以连接,然后传输数据。如下面链接,我写的TCP/IP通信实例:

https://blog.csdn.net/qq_38769551/article/details/97931974

这三块协议,在实际产品使用过程中,都是一环扣一环,缺一不可。要做产品还是要全部都懂。

补充:

IIC
有两根线, SCL , SDA, 主从设备都可用将控制线拉底。 数据线也要传片选地址。
是半双工总线,结构简单,总线上可以同时挂多个设备。

SPI
是四根线,时钟,收,发,片选。有统一时钟控制,收发同时进行。速度可达 Mbps。
通过片选管脚选择设备,占用较多I/O,或需要外围锁存器或译码器选择从设备。

IIS
是用与数字音频的总线
DATA, 用于串行数字音频数据。
LRCK, 左右声道开关
SCLK, 时钟,采样频率采样位数2,两个声道所以要乘2

UART
通用异步收发器(串口)
异步表示目有时钟,只有收发两根线(TXD、RXD)和GND地线。+电源线

TTL电平
0V / 5V

RS232
异步串行通信接口,用于近距离(1-10m)低速通信。距离长了抗干扰性能差。距离越大,速率下降越快。
逻辑1(MARK)=-3V~-12V
逻辑0(SPACE)=+3~+12V
转换成uart连接芯片需要电平转换芯片。MAX232芯片是TTL电平与RS232电平的专用双向转换芯片,可以TTL转RS-232,也可以RS-232转TTL。

RS485
RS-485采用差分信号负逻辑,+2V~+6V表示“0”,- 6V~- 2V表示“1”。
为解决232抗干扰性能差的问题而设计的物理层通信协议。 RS-485接口的最大传输距离标准值为4000英尺,实际上可达 3000米。
半双工,两根线,逻辑“1”以两线间的电压差为+(2—6)V表示;逻辑“0”以两线间的电压差为-(2—6)V表示,电平与TTL兼容,使用电压差表示信号提高抗干扰能力,距离长(1km),最高10Mbps.

在这里插入图片描述

  相关解决方案