1. AHB APB
AHB总线,是arm AMBA模块中用于连接高速设备的接口。一般用于CPU、协处理器之间的连接,属于系统总线。采用主机/从机模式。
当ready为low时,Master可以向slave写数据;
当hready为high时,Master从slave读数据有效。
2.I2C
引脚线:sck、sda
可以实现多主机模式。多个I2C设备互连,每个设备都可以当主机或从机。
sck =1,data=1 总线空闲
sck=1->0(下降沿) I2C数据开始发送
sck=0->1(上升沿) I2C数据停止发送
clk=0 data数据可以变化,发送数据
clk=1 data数据有效,被从机读取
速度:100K/400K/3.4Mbps
常用于手持移动设备。可以接sensor、touch、camera、NFC、charger等。
3.SPI
引脚线:SS/CS、 MOSI、MISO、SCK
同步全双工总线。
根据始终极性(CPOL)和相位(CPHA)来判断发送起始及结束发送时刻是上升沿还是下降沿。
常用于工控。可以接网卡、sd卡(现在大多使用SDIO接口,速度快)等
4. I2S
引脚:ws(左右声道选择)、sck、sd(传输数据)
传输时,一般需要保证发送数据长度与接收端接受数据长度的能力是相同的。格式仍然是MSB在前LSB在后,需要注意的是当发送端发送数据长度少于接收端结束数据长度,末尾补0;如果相反,丢掉多于的数据。当然,I2S也允许二者长度不相同。
5.SDIO
引脚:CLK、CMD(用于host传输命令及device response)、DATA0-DATA3
DATA1 为中断线
Host端主动发起命令。
读:host发送命令,device接收并返回握手信号,然后,host发送数据,同时发送的有CRC校验码,传输完毕,host发送结束命令,device接收,并response
写:host发送命令,device接收并返回握手信号,然后,host发送数据,写入数据也是带有CRC校验码的,host发送结束命令,device接收后response
支持SDIO模式和SPI模式。
用于SD卡,同时兼容MMC卡。
6.USB
轮询式总线