第七章

因爲LED驅動只能在S3C開發板上安裝,所以buildSh直接執行了build-s3c6410.sh腳本文件進行編譯和安裝,並不會出現用戶選擇在Ubimtu LinuxAndroid模擬器仍是s3c開發板對應的Linux內核上編譯,但若是同時鏈接了Android設備啓動課Android模擬器,仍是會讓用戶選擇想那個設備中上傳,請選擇s3c開發板,不然即便上傳成功,也會用於Linux內核版本問題的沒法安裝成功。數組

建立一個設備文件的步驟:函數

1使用cdev-init函數初始化cdevui

2指定設備號。編碼

Linux設備文件的設備號分爲主設備號和次設備號。用一個int類型表示,其中前12位表示主設備號。後20位表示次設備號。設備號有以下兩種指定方法:spa

(1)  直接在代碼中指定(硬編碼)。ci

(2) 動態分配。開發

多個Linux設備文件能夠擁有同一個主設備號。可是兩個設備的主設備號和次設備號不能都是同樣的。在使用alloc-chirdev-region函數自動分配設備號時,bascmiorcount參數不要設置的太大,否者次設備號就會溢出,而且設備號會進位,從而變成了下一個主設備號。字符串

3使用cdev-add函數將字符設備添加到內核中的字符設備數組中。it

4使用class-create宏建立struct classio

5使用decice-create函數建立設備文件。

LED驅動能夠使用以下兩種方式控制LED

(1)經過字符串控制LED

(2)經過I/O命令控制LED

指定模塊參數時參數名,參數值與等號之間不能有空格。

相關文章
相關標籤/搜索