串口通讯是什么?学术解释是,通过总线在一个时间点连续发送一位数据的方法。如同弓箭手频繁射出弓箭一般,嗖、嗖、嗖……
串口通讯协议是什么?说的大白话一点,就是串口通信时所使用的协议传输方式。
串口通讯协议有几种呢?串行通信协议包括系统间协议和内部系统协议。
系统间协议:用于通信两个不同设备的系统间协议。就像计算机与微控制器套件之间的通信一样。通过内部总线系统进行通信。常见的有UART协议、USART协议、USB协议。
内部系统协议:内部系统协议用于通信电路板上的两个设备。在使用这些系统内协议时,我们将不使用系统内协议而扩展微控制器的外围设备。使用系统内协议会增加电路复杂度和功耗。使用系统内协议,电路复杂度和功耗降低,成本降低,并且访问数据非常安全。常见的有I2C协议、SPI协议、CAN协议。
UART协议
UART代表通用异步发送器和接收器。UART协议是具有两个有线协议的串口通信。数据电缆信号线标记为Rx和Tx。串口通信通常用于发送和接收信号。它被传输并与串口通信接收数据,而没有类脉冲。UART接收数据字节并按顺序发送各个位。
USAT协议在嵌入式系统中,通常作为 MCU 的外设; 一般来说,由芯片引脚直接引出的一般是 TTL 电平;而中间接有转换芯片的可能就是RS232电平。详情可查看:串行通讯的标准
UART是半双工协议。半双工意味着具有传输和接收数据的功能,但不能同时进行。大多数控制器在电路板上都有硬件UART。它使用一条数据线来发送和接收数据。它具有一个起始位、一个8位数据和一个停止位,表示8位数据传输一个人的信号是从高到低。例如:电子邮件、短信、对讲机,工业物联网传输设备串口服务器。
UART协议数据流
USART协议
USART代表通用的同步和异步发送器和接收器。它是两线协议的串口通信。数据电缆信号线标记为Rx和TX。该协议用于逐字节发送和接收数据以及时钟脉冲。这是一种全双工协议,意味着同时以不同的板速发送和接收数据。不同的设备通过此协议与微控制器通信。例如电信。
USART协议数据流
USB协议
USB代表通用串行总线。同样,它是两线协议的串行通信。数据电缆信号线标记为D +和D-。此协议用于与系统外围设备进行通信.USB协议用于向主机和外围设备串行发送和接收数据.USB通信需要基于系统功能的驱动程序软件.USB设备可以在其上传输数据主机上没有任何请求的总线。现在,当今大多数设备都在使用这种技术与USB协议进行通信。像计算机一样使用USB与ARM控制器通信。USB以不同的模式传输数据。第一个是10 kbps至100 kbps的慢速模式;第二个是全速模式500kbps至10mbps,高速模式25mbps至400Mbps。USB最大电缆长度为4米。
例如:鼠标、键盘、集线器、开关、笔式驱动器。
USB协议通讯
I2C协议
I2C代表内部集成电路。I2C只需两条线即可将所有外设连接到微控制器。I2C只需两条线SDA(串行数据线)和SCL(串行时钟线)即可在设备之间传输信息。它是从属通信协议的主控。每个从站都有一个唯一的地址。主设备发送目标从设备的地址和读/写标志。该地址与该设备打开的任何从设备匹配,其余从设备处于禁用模式。一旦地址匹配,在主机和该从机之间进行通信,并发送和接收数据。发送器发送8位数据,接收器回复1位确认。通讯完成后,主站发出停止条件。
I2C总线是由飞利浦半导体公司开发的。其最初目的是提供一种将CPU连接到外围设备芯片的简便方法。嵌入式系统中的外围设备通常作为内存映射设备连接到微控制器。I2C仅需要两条线即可将所有外设连接到微控制器。这些称为SDA和SCL的有源线都是双向的。SDA线是串行数据线,而SCA线是串行时钟线。
I2C协议数据流
I2C上拉电阻:
为什么在I2C SCL和SDA线路中使用上拉电阻。
SDA和SCL线均为漏极开路驱动器。
它可以将输出驱动为低电平,将其驱动为高电平。
为了使线路能够变高,您必须提供上拉电阻
SPI协议
SPI代表串行外设接口。它是摩托罗拉开发的串行通信协议之一。有时SPI协议也称为4线协议。它需要四线MOSI,MISO,SS和SCLK.SPI协议用于通信主设备和从设备。主机首先使用频率配置时钟。然后,主机通过拉片选按钮选择特定的从设备进行通信。选择该特定设备并开始主机与该特定从机之间的通信。主机一次仅选择一个从机。它是一种全双工通信协议。在位传输的情况下,不限于8位字。
SPI协议数据流
CAN协议
CAN代表控制器局域网。它是一个串行通信协议。它需要两条线CAN高(H +)和CAN低(H-)。它是由Robert bosh公司于1985年开发的,用于车载网络。它基于面向消息的传输协议。
1970年代是汽车制造商开始引入新功能的时代,例如防抱死制动,空调,齿轮控制,中央操作门锁等。这些功能确保了额外的接线和复杂的设计,从而增加了成本和风险。为了克服这些问题,Robert Bosch在1980年代引入了CAN协议。此串行通信协议在1993年进一步标准化为ISO11898。正是CAN协议完全改变了高级传感器之间的通信。
CAN协议常用于汽车、飞机和医疗系统中的电子网络。常见产品有Can转以太网设备USR-CANET200