CAN总线
全称Controller Area Network控制器局域网
理论上可以挂载无数个节点
可以使用双绞线,光纤
差分电压传输,CAN_H比CAN_L高表示逻辑0
采用MCP2510芯片
485
有VCC,GND,D+,D-四线,
SPI与ISP都是品行移位接口,都需要移位时钟
ISP有IO,clock,VCC,GND,VPP五条总线
SPI有DI,DO,CLK,CS或DI,DO,CLK
ISP属于在线编程,也有用SPI做在线编程的,变为VCC,GND,VPP,DI,DO,CLK
I2C总线
由PHILIPS开发的两线串行总线,用于近距离,非经常性的数据通信,不能全双工,一般用于同一板上芯片间通信
直接实现上位机与下拉机,连接无需MCU
多个I2C设备连到总线上,通过地址识别
三种信号:开始,结束,应答信号
SDA线上的数据只在SCL低电平时改变,高电平时SDA状态表起始和停止
红外
红外数据通信标准,类似于TCP/IP协议
ULCONn寄存器的红外模式位设为1即可
由IrDATXD发送端和IrDARXD接收端组成
SPI
提供串行时钟的为主设备,主从设备间全双工通信
当有多个设备时,增加一条片选信号
用通用IO口模拟SPI设备时,必须有一个SDO,一个SDI
若实现主从设备,则需输入输出口
若只实现主设备,则需输出口即可
若只实现从设备,则需输入口即可
UART
可以全双工工作,波特率产生器产生的波特率等于传输波特率的16倍
可用通用I/O口模拟UART总线
CPU将数据写入UART寄存器,再通过FIFO送到品行设备上
低位开始,后面7~8位数据位,后接奇偶校验位和停止位
接收器发现开始位后,尝试与发送器同步时钟频率
标准有RS232,485,499,423,422,只与物理层有关,数据层协议一样
数据同1变为0视为一帧的开始,逻辑0要8个CLK时钟,每隔16个CLK采样数据
软件模拟:利用中断计时器TMR0,1,2定时采样
USART
同步传输时,可主机同步时钟,也可从机同步时钟
支持多机通信,而UART不行
时钟发生器由同步逻辑电路和波特率产生器组成