用哪种协议首先肯定是看这个芯片支持什么协议。
其次再考虑如下:
IIC
不考虑电源和GND的情况下,两条线,SCL时钟线和SDA数据线,同一个IIC总线上可以挂载2^7-1一共127个设备,不过由于寄生电容的存在,挂载不了这么多,但就算挂载几个设备,也节省主控IO口资源。
同一条IIC总线上,不同设备靠设备地址区分。
由于只有两条线,所以是半双工通信,通信速度慢。
SPI
不考虑电源和GND的情况下,SPI有四根线,片选信号CS,时钟SCLK,主输入从输出MISO,主输出从输入MOSI。
所以占用主控IO较多,不光要片选的IO口,数据线也有两条。
但与此同时,因为数据线多,所以是全双工通信,所以传输速率较快。
SCLK: Serial Clock (output from master);
MOSI; Master Output, Slave Input(out