驅動程式:
本質:是硬體裝置建立相應的裝置節點檔案。建立裝置檔案時,規定好裝置檔案的使用方式。
應用程式:
根據驅動程式規定的裝置檔案使用方式去控制硬體。
控制硬體裝置步驟:
1、找出硬體裝置所對應的裝置節點檔案
兩個地方:
2、找出驅動程式規定的裝置檔案使用方式。
裝置節點檔案:/sys/class/leds
往brightness檔案寫入乙個數值,就能控制led燈的亮度,led亮度值:0~255。
示例**如下:
#include
#include
#include
#include
#include
#define red_dev_path "/sys/class/leds/red/brightness"
#define blue_dev_path "/sys/class/leds/blue/brightness"
#define green_dev_path "/sys/class/leds/green/brightness"
/* 迴圈點燈 */
intled_ctrl
(void
)// 獲取藍燈裝置檔案描述符
blue_fd =
open
(blue_dev_path, o_wronly);if
(blue_fd <0)
// 獲取綠燈裝置檔案描述符
green_fd =
open
(green_dev_path, o_wronly);if
(green_fd <0)
// 迴圈點燈
while(1
)close
(red_fd)
;close
(blue_fd)
;close
(green_fd);}
intmain
(int argc,
char
* ar**)
Linux通過字元裝置檔案控制GPIO
通過字元裝置檔案控制gpio電平通知微控制器訊號。獲取gpio號 notify gpio of get named gpio pdev dev.of node,notify gpio 0 if ret gpio init 0 註冊字元裝置 define gpio major 199 major de...
對I O裝置的控制方式
在i o控制方式的整個發展中,始終貫穿的宗旨是 儘量減少主機對i o控制的干預,把主機從繁雜的i o控制事務中解放出來,以便更多地完成資料處理任務 採用輪訓的可程式設計方式 在程式i o方式中,cpu的絕大部分處理時間都處於等待i o裝置完成資料i o的迴圈測試,對cpu造成了極大的浪費,在該方式中...
通過API實現C 對硬體的控制(一)
最近在做專案的過程中,涉及到對硬體啟用及禁用的功能 在指定時間段內才能啟用硬體 因為c 自身對硬體的操作基本為零,為此,搜尋了一下msdn中與裝置相關的api函式。還果然就有。下面一一枚舉出各函式的原型及相關的說明文件。並將其轉為c 實現。原型 hdevnotify winapi registerd...