biss c可以用spi外设来读取,但是也并不是那么直接了当。mcu的spi通常都是根据要读取的位长发送固定个数的时钟,但是biss-c的协议比较特别,针对固定位数的数据,它每一帧总的时钟个数也可能是不同的,它总是在收到start bit之后发送固定个数的时钟,而在start bit之前的时钟个数可变,取决于线长,驱动芯片的时延,以及从机计算crc的时间不同而变化;其次,spi的位数通常是字节,半字或者全字长,而biss-c的从机的位长则没这个限制,spi需针对非标准长度的做处理;最后,在高速时钟的通信中,需要考虑位延时对数据移位的影响,比如,约定下降沿读数有可能变成上升沿读数,根本原因是biss-c是长距离通信,主机发出的时钟沿跟从机返回的数据沿有可能错半拍,这样导致读数错误。整个实现需要spi,定时器等的严密设计。