一、嵌入式領域
軟體開發 -----》linux環境/邏輯/演算法(上層應用)
系統開發 -----》linux核心運維(shell指令碼)
驅動開發 -----》電路分析/硬體構造/驅動設計
二、led燈
驅動工程師:
1)驅動原始碼:led.c
2)驅動檔案:ked.ko
三、軟體應用層如何去使用底層的驅動?
1.分析原始碼led.c
1.1驅動裡面沒有主函式(main)
應用層才會出主函式
1.2驅動中輸入字串使用的是printk();
檢視列印等級:
cat /proc/sys/kernel/printk
7 7 1 7
#define kern_emerg "<0>" /* system is unusable */
/*緊急事件訊息,系統崩潰之前提示,表示系統不可用*/
#define kern_alert "<1>" /* action must be taken immediately */
/*報告訊息,表示必須立即採取措施*/
#define kern_crit "<2>" /* critical conditions */
/*臨界條件,通常涉及嚴重的硬體或軟體操作失敗*/
#define kern_err "<3>" /* error conditions */
/*錯誤條件,驅動程式常用kern_err來報告硬體的錯誤*/
#define kern_warning "<4>" /* warning conditions */
/*警告條件,對可能出現問題的情況進行警告*/
#define kern_notice "<5>" /* normal but significant condition */
/*正常但又重要的條件,用於提醒*/
#define kern_info "<6>" /* informational */
/*提示資訊,如驅動程式啟動時,列印硬體資訊*/
#define kern_debug "<7>" /* debug-level messages */
/*除錯級別的訊息*/
應用層中輸出字串使用的是printf();
2.led.c結構
1)初始化函式
module_init(led_init);
2)為4盞燈led申請gpio口
gpio_request(led_gpios[i].gpio, led_gpios[i].name);
3)把4個gpio口設定為輸出模式
gpio_direction_output(led_gpios[i].gpio,0);
4)註冊乙個雜項裝置(結構體)
misc_register(&gec6818_led_dev);
5)定義的雜項裝置的成員
static struct miscdevice gec6818_led_dev = ;
實訓第七天
姓名 祖東科 日期 2018.7.15 作業training4 字串訓練 1.題目 請編寫乙個c函式,該函式將乙個字串逆序 include include include int main scanf s ptr begin ptr ptr strlen ptr 1 while ptr begin ...
校內實訓第七天學習筆記
通過ip實現今天天氣及未來七天天氣的展示 先通過設定ip實現api接入,修改函式得到當前定位的天氣。對頁面總體布局進行設定,實現滑動顯示七天天氣。js設定自動獲取定位,顯示本地地區 wx獲取位置介面 wx.getlocation success function res 設定接入今日天氣和七天天氣的...
智慧型家居實訓第三天
練習 翻 最後一行的資料和第一行交換 u盤掛載 步驟 1.把這個u盤插到開發板,最左邊的usb介面 2.使用crt軟體在終端輸入 cd mnt 3.使用ls命令,sd 記憶體卡 udisk u盤 4.進到udisk裡面 cd udisk 5.使用複製命令 cp 檔名 路徑 6.使用cd命令 cd 注...