Mini2440之linux驅動移植-LED字元裝置驅動
阿新 • • 發佈:2022-02-10
我們在linux驅動基礎概念這一節中粗略介紹了linux驅動的概念,以及應用程式是如何呼叫驅動程式的。
這一節我們將一點亮LED為例來介紹字元裝置驅動的編寫。
一、LED硬體
1.1 硬體接線
檢視Mini2440原理圖、S3C2440資料手冊,瞭解如何點亮LED。在Mini2440裸機開發之點亮LED中我們已經介紹了Mini2440 LED1~LED4的接線方式,以及暫存器的設定,這裡簡單說一一下,就不具體介紹了:
- LED1~LED4對應引腳GPB5~GPB8,以點亮LED1為例;
- 配置控制暫存器GPBCON(0x56000010)的bit[11:10]=01,使GPB5引腳為輸出模式;
- 配置資料暫存器GPBDAT(0x56000014)的bit5=0,使GPB5引腳輸出低電平;
二、字元裝置驅動框架
2.1 編寫led_open、led_read函式
在核心中找到相近的驅動程式,以它為模板進行開發,設計所要實現的操作,比如 open、close、read、write 等函式;
2.2 註冊LED驅動程式
實現驅動程式的初始化:比如向核心註冊這個驅動程式,這樣應用程式傳入檔名時,核心才能找到相應的驅動程式;
2.3 編譯驅動到核心
2.4 測試驅動程式
參考文章