SPI中从控如何给某个从设备发送信息?(比如SPI总线上有多个相同的设备A,B,C设备,那么它如此那信息传送给C,而不是A,B)
1. 首先对于软件开发而言,不需要很详细的了解硬件的整个细节,但要概括的知道这个协议是怎么工作的,下面作概要的整理,以备以后查看。
2.大概的工作原理过程是:主控端发送信息包(指令、地址(软件事先是知道设备的地址) 、数据)发送到SPI总线上,然后,如果使能(从设备上有片选引脚)的从设备,它就会去检查信息包的中的地址,如果与自己的match,就接收信息,如果不是就不处理,信息包传到下一个从设备,从设备match地址,反复进行。【只是概括的说,细节上肯定还有更细致的操作】
主片在访问某一从片时,必须使该从片的片选信号有效;主片在SCK信号的同步下,通过SI线发出指令、地址信息;如需将数据输出,则接着写指令,由SCK同步在SI线上发出数据;如需读回数据,则接着读指令,由主片发出SCK,从片根据SCK的节拍通过SO发回数据。因而对具有SPI接口的从片器件来讲,SCK、SI是输入信号,SO是输出信号。SCK用于主片和从片通信的同步。SI用于将信息传输到器件,输入的信息包括指令、地址和数据,指令、地址和数据的变化在SCK的低电平期间进行,并由SCK信号的上升沿锁存。SO用于将信息从器件传出,传出的信息包括状态和数据,信息在SCK信号的下降沿移出。
本文介绍SPI通信中如何确保信息被特定从设备接收。主控通过发送包含地址的信息包,使能指定从设备的片选信号,从设备根据地址匹配接收数据。SCK同步信号、SI指令与数据输入及SO数据输出是SPI通信的关键。

2690

被折叠的 条评论
为什么被折叠?



