1.主機驅動與外設驅動分離
linux中的spi子系統利用了典型的把主機驅動和外設驅動分離的想法,讓主機端只負責產生匯流排上的傳輸波形,而外設端只是通過標準的api來讓主機端以適當的波形訪問自身。這裡面涉及到了4個軟體模組。
1)主機端驅動:根據控制器的硬體手冊,操作spi控制器,產生匯流排的傳輸波形。
2)連線主機與外設的紐帶:外設不直接呼叫主機端的驅動來產生波形,而是呼叫乙個標準的api。通過api將傳輸請求間接
3)外設端驅動:
4)班級邏輯:
SPI子系統一
一 spi連線 sdi 資料輸入 sdo 資料輸出 sck 時鐘 cs 片選 1 sdo 主裝置資料輸出,從裝置資料輸入 2 sdi 主裝置資料輸入,從裝置資料輸出 3 sclk 時鐘訊號,由主裝置產生 4 cs 從裝置使能訊號,由主裝置控制 其中cs是控制晶元是否被選中的,也就是說只有片選訊號為預...
linux驅動子系統之輸入子系統 5
5.總結 5.1 事件資訊的上報過程分析 l 上報的大致過程 裝置驅動層 核心層 事件處理層 應用層 l 具體呼叫的函式 以evdev為例 input event input handle event input pass event handle handler event handle,type...
初探linux子系統集之timer子系統 三
從上圖能夠得知,首先最底層是cpu的本地timer模組了,什麼都得依賴於這個最底層硬體。然後是時鐘源clock source模組,時鐘事件clock event模組了,這兩個是乙個抽象,能提供時鐘的都是時鐘源,能觸發one shot或者週期性中斷的裝置就是時鐘事件裝置了。hrtimer就是高精度ti...