使用spi协议,接收来自slave的数据之前写0xff的原因
生活随笔
收集整理的這篇文章主要介紹了
使用spi协议,接收来自slave的数据之前写0xff的原因
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原來是spi?IP核在接收的時候也把移位寄存器中的數據通過mosi發送出去了,從slave看,它通過miso發送數據給master的同時也接收來自master?mosi上的數據。因為spi協議是沒有反饋信號的,所以slave在發送數據的同時接收到的數據如果是slave能夠識別的一個命令值的話那么這時就會對slave產生影響了。這時slave就會按照新的命令運行,然而這個命令是master在接收slave數據時不經意發送出去的,它本身是不打算發送出去的。為了解決master在接收數據的同時誤發命令,所以在接收數據之前先寫0xff進入移位寄存器。這樣master在接收來自slave的數據的同時發送0xff給slave,slave不識別0xff這個命令自然就不會影響它本身的運行了。
上面說了一大堆東西,現在你就會發送其實也不一定要寫0xff是不是啊?是的,只要接收數據之前往移位寄存器寫一個slave無法識別的數據就行了。
總結
以上是生活随笔為你收集整理的使用spi协议,接收来自slave的数据之前写0xff的原因的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32的ADC笔记
- 下一篇: 用中断的方式实现delay延时的一点注释