stm32之spi之NSS管腳信號


NSS管腳及我們熟知的片選信號,作為主設備NSS管腳為高電平,從設備NSS管腳為低電平。當NSS管腳為低電平時,該spi設備被選中,可以和主設備進行通信。在stm32中,每個spi控制器的NSS信號引腳都具有兩種功能,即輸入和輸出。所謂的輸入就是NSS管腳的信號給自己。所謂的輸出就是將NSS的信號送出去,給從機。

NSS管腳的輸出和輸入在spi控制器中有專門的寄存器控制位控制其進行切換,而這個寄存器就是spi_cr2。在這個寄存器中其中有一位為ssoe,當SSOE位為1時且相應的spi處於主模式下那么NSS就輸出低電平。所有與之相連的設備NSS管腳接收到的就都是低電平。因此被選作為從設備。

對於NSS的輸入,又分為軟件輸入和硬件輸入。

軟件輸入:

NSS分為內部管腳和外部管腳,通過設置spi_cr1寄存器的ssm位和ssi位都為1可以設置NSS管腳為軟件輸入模式且內部管腳提供的電平為高電平,其中SSM位為使能軟件輸入位。SSI位為設置內部管腳電平位。同理通過設置SSM和SSI位1和0則此時的NSS管腳為軟件輸入模式但內部管腳提供的電平為0。若從設備是一個其他的帶有spi接口的芯片,並不能選擇NSS管腳的方式,則可以有兩種辦法,一種是將NSS管腳直接接低電平。另一種就是通過主設備的任何一個gpio口去輸出低電平選中從設備。


硬件輸入:

主機接高電平,從機接低電平。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com