URT,RT232称为串口
UART(Universial asynchronous receivertransmitter)通用异步收发器,包括RS232,RS449,RS423,RS422,RS485等接口标准规范和总线标准规范,即UART时异步串行通信口的总称
RS232标准中,字符是以一串行的比特串来一个接一个地以串列(serial)的方式传输的,有点是传输线少,配线简单,发送距离可以较远。最常用的编码格式时异步起停(asychronous start-stop格式,效果是部的传输速率,发送信号的速率以IO划分,代替异步起停的方式是使用高级数据链路控制协议(HDLC))
RS232的设备可以划分为数据终端设备(TDE,data terminal equipment)(如PC)和数据通信设备(DCE,Data communicationequipment)两类
蓝牙模块,wifi模块,超声波模块或者其他做好二次封装的模块,通常使用TTL电平的串口进行通信
串行通信在软件设置里要做多项设置,包括波特率(baud),数据位(data bits),奇偶校验(parity check)和停止位(stop bits)
波特率(bps):衡量通信进度的参数。时钟周期就是指波特率。波特率和距离成反比
数据位:衡量通信中实际数据位的参数。每个包指一个字节,包括开始、停止位,数据位和奇偶校验位。数据数据位取决于通信协议的选取,术语“包”指任何通信的情况
停止位:用来表示单个包的最后一位,典型的值为1位,5位和2位。由于数据是在传输线上定时的,并且每一个设备有自己的时钟,所以通信中设备间可能出现不同步。因此停止位不仅仅表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,数据传输率也越慢。
串口设置通常都是8/N/1,即8位数据,无校验,停止位1
流量控制:当需要发送握手信号或数据完整性检测时,需要指定其他设置。常用的组合有RTS/CTS,DTR/DSR或XON/XOFF。实际中不使用连接器管脚而在数据流内插入特殊字符。一般建议使用RTS/CTS代替XON/XOFF,XON/XOFF是一种工作在终端间的方法,必须双方支持这个协议,突然启动时会有混淆的可能。RTS/CTS最初设计为电传打字机和调制解调器半双工通信,每次他只能个一个方法的调制解调器发送数据。PTS/CTS通过硬件实现握手
RS485传输距离更远,TTL+一个485电平转换芯片
I2C(Interintergrated circuit)集成电路总线,是一种串行通信总线,使用多主从架构。I2C只需两个数据线就可以连接多个设备。I2C在硬件设计中都作为传感器接口和EEPROM存储的接口
使用大容量存储时,使用SPI的flash
串行外设接口(SPI,Serial peripheral interface bus)是一种用于短程通信的同步串行通信接口规范,主要用于单片机系统中,SPI设备间使用全双工模式通信,包括一个主机和一个或多个从机,有时SPI接口被称为4线程接口
SPI至少需要4根线,3也行,单向传输时
SCLK(serial clock):串行时钟,由主机发出
MOSI(master output,slave input):主机输出,从机输入信号,由主机发出
MISO(master input,slave output):主机输入从机输出信号,由从机发出
SS(slave selected):片选信号,由主机发出,低电平有效
MOSI也称SDO,MISO也称SOI,SS称为CS(Chip selected)
控制器局域网(controller area network简称CAN或CAN BUS)是一种通信协议,其特点是允许网络上的设备直接互相通信,网络上不需要主机控制通信(host)
即时的信息传输(real-time data transmission)为can的特点之一
现在的BIOS通常包括两个部分:BIOS:基本输入输出流;EC(enhance d controller嵌入式控制器,通常是一个16位单片机,它内部本身也有一定容量的flash来存储EC的代码(也可能直接一块EC芯片存储EC代码)即主板的flash rom其实包含着EC和BIOS两套系统)
大多数嵌入式系统用的是squashfs和jffsz文件系统