提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
本文对常见的硬件通信(RS232,RS485,IIC,SPI, UART)协议进行了简单介绍
一、RS232协议(3根线)
这是一个串行通讯标准,规定采用一个标准连接器,对每个引脚作用加以规定,对每个信号电平进行定义
1电平:-5到-15V,0电平:+5到+15V,
可用 MAX232 进行电平转换,可将TTL信号转为232信号。
优点:抗干扰,可传15米,
问题:电平高,易损芯片,成本高;速度低;共模干扰;可传输15m
二、RS485协议特点(2根线)
(用于仪器仪表领域)采用差分信号传输,速度快;解决远距离,可传1500M;抗干扰;允许连多个收发器,方便节点组网,而232和串口是点对点。
+2到+6表示1,-2到-6表示0。
接口电平降低,不易损坏芯片,与TTL电平兼容,可与TTL电路连接
采用2线制,总线式拓扑结构,发送和接收不可同时进行,只能半双工方式工作
在处理器外部,需加外部电路(MAX485),将TTL信号转化为差分信号;需区分主从机
三、IIC(内部集成电路)总线(2根线)
1.特点:串行,半双工;近距离;低速通信;结构简单,成本低,硬件,
2.两根双向线;SDA(数据线)收发数据,SCL(时钟线)时钟同步。是多主机总线,连接器件分主机(发起,结束)和从机(接收)。
3.具备冲突检测和仲裁功能,防止错误
4.每个连接器件有唯一地址(7位),为区别不同芯片
5.每个器件可作主,从,同一时刻只能各有一个;总线上增减器件不影响其它器件工作
6.通信过程:
主发起始信号,启动总线
主发一字节,指明从地址和传送方向(高7位+低1位):1是主接,0主发;从机发应答信号
主发一字节数据,从回复应答;重复,直至发完
主发停止信号,释放总线
7. IIC总线信号实现:
起始信号SDA由高到低,发后总线占用。
停止信号SDA由低到高,发后总线空闲(SDA和SCL空闲时为高电平)。
字节传送:主机只能传八位,先传最高位(和串口相反),从机回复一位。
从机发低电平为应答信号。
8.同步信号:SCL为低电平,主机发一位数据;为高电平时,从机读一位数据。IIC可以发送任意个字节
典型IIC时序:主向从,从向主。但停止信号必须由主机发
9. S起始,A(ACK)应答,P终止
四、SPI(serial peripheral interface串行外设接口)总线(4根线)
1.特点:高速,全双工,同步,主从方式,
2.至少4根线:MISO(master ,slave )主入从出,MOSI主出从入,SCLK时钟,CS片选 【可能多条,有多少从机,主机就有多少CS接线端,主机向从机发使能信号(高电平或低电平),表示选中该机,每个从机的CS都连到主机】
3.如何判断高低电平有效:看接口,CS戴帽,低电平有效,无帽则高电平有效
4.通信过程:传输时,先发高位,后发低位;发一个字节后,无需等待从机应答,可一直发,无起始信号;在时钟上(下)升沿发数据,下(上)降沿接数据
五、UART(Universal Asynchronous Receiver/Transmitter)(2根线)
UART是通用异步收发传输器缩写,它是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。
缺点:接口不统一,抗干扰能力差,通信距离短 。
不同单片机的高低电平: 对于51单片机: 0和5V ;对于 STM32:0V 和3.3V
总结
本文对通信协议及常用硬件接口作了简要介绍。