stm32之spi之NSS管脚信号
NSS管腳及我們熟知的片選信號,作為主設(shè)備NSS管腳為高電平,從設(shè)備NSS管腳為低電平。當(dāng)NSS管腳為低電平時,該spi設(shè)備被選中,可以和主設(shè)備進(jìn)行通信。在stm32中,每個spi控制器的NSS信號引腳都具有兩種功能,即輸入和輸出。所謂的輸入就是NSS管腳的信號給自己。所謂的輸出就是將NSS的信號送出去,給從機(jī)。
NSS管腳的輸出和輸入在spi控制器中有專門的寄存器控制位控制其進(jìn)行切換,而這個寄存器就是spi_cr2。在這個寄存器中其中有一位為ssoe,當(dāng)SSOE位為1時且相應(yīng)的spi處于主模式下那么NSS就輸出低電平。所有與之相連的設(shè)備NSS管腳接收到的就都是低電平。因此被選作為從設(shè)備。
對于NSS的輸入,又分為軟件輸入和硬件輸入。
軟件輸入:
NSS分為內(nèi)部管腳和外部管腳,通過設(shè)置spi_cr1寄存器的ssm位和ssi位都為1可以設(shè)置NSS管腳為軟件輸入模式且內(nèi)部管腳提供的電平為高電平,其中SSM位為使能軟件輸入位。SSI位為設(shè)置內(nèi)部管腳電平位。同理通過設(shè)置SSM和SSI位1和0則此時的NSS管腳為軟件輸入模式但內(nèi)部管腳提供的電平為0。若從設(shè)備是一個其他的帶有spi接口的芯片,并不能選擇NSS管腳的方式,則可以有兩種辦法,一種是將NSS管腳直接接低電平。另一種就是通過主設(shè)備的任何一個gpio口去輸出低電平選中從設(shè)備。
?
硬件輸入:
主機(jī)接高電平,從機(jī)接低電平。
總結(jié)
以上是生活随笔為你收集整理的stm32之spi之NSS管脚信号的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决STM32 SPI 半残废 NSS无
- 下一篇: STM32 SPI难点浅析