关注、星标
嵌入式客栈 ,精彩及时送达
[导读] 干过单片机的盆友或许都拿IO口对着时序模拟过SPI主控制器,在做嵌入式Linux设备开发时,发现SPI对应的脚都被用了,或者被当成别的用途了,这时候咋办?你或许会说我翻IO口写个字符驱动不就完了么?当然你可以这么做,然而并没有必要。自己写也挺麻烦且未必稳。憋慌!且看本文分解~
SPI什么鬼?
SPI(Serial Peripheral Interface) 是一种嵌入式系统中应用广泛的同步串行通信、主从架构式总线接口。80年代由摩托罗拉开发,已成为事实标准。
要理解啥是SPI,先上图,一图胜千言:
常见的SPI接口有这样几个引脚:
- SCLK: 串行时钟,总是主端负责输出(Master)。总是由主端控制该信号,从端为输入采样。
- MOSI:主出从入(Master Output Slave Input)。总是由主端控制该信号,从端为输入采样。
- MISO:主入从出(Master Input Slave Output)。总是由从端控制该信号,主端为输入采样。
- :从选择信号(Slave Select)。总是由主端控制该信号,从端为输入采样。
常见的两种总线连接方式,