開發SPI驅動,發現連續發送多位元組時片選信號并不是一直拉低,是每一個位元組拉低再拉高這樣。不管是自己用SPI的函式寫的驅動,還是直接用原始碼里面已經有的SPI從設備的驅動,用示波器量的都是這個現象。看到網上有解決辦法是把片選信號做成通用IO,自己控制,但求教為什么直接用linux自帶的SPI函式就不行,總不能是linux的原始碼bug吧,我試了4.9和5.3版本的都是這個問題,請各位大神指點迷津!!不勝感激!
uj5u.com熱心網友回復:
這跟SPI controller有關,就是SPI master驅動相關的,不是SPI device驅動。有的SPI master ,是連續發,CS一直為低的。 至于你那邊的情況,要看SoC上SPI是怎么配置的,理論上,應該有配置項,看看SoC 規格書怎么說的。
uj5u.com熱心網友回復:
這個要查 spi 控制器的源代碼實作,看看是怎設定的了。uj5u.com熱心網友回復:
你是不是看錯了,你使用示波器測量的嗎?不用懷疑linux,要么是你把sck線當做了cs線,要么是你沒有測驗對,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/49512.html
標籤:驅動程序開發區
