日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第三次月考

發布時間:2025/3/21 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第三次月考 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第八章 讓開發板發出聲音:蜂鳴器驅動

一、linux代碼驅動的代碼重用:linux驅動的代碼重用有很多的方法,比如說用c程序的方式,將要重用的代碼放到其他文件中但是要在頭文件中聲明。還可以采用另外一種動態重用的方式就是一個linux驅動可以使用另一個驅動的內容,如函數等。編譯是由多個文件組成的linux驅動,如果linux驅動復雜,就需要多個linux文件來存放不同的功能,這樣有利于分類和管理。

二、強行卸載linux驅動:如果編寫的linux驅動程序在邏輯上是正確的,那么是可以正常裝載和卸載的,在有些情況下就不能正常裝載和卸載,Linux驅動無法卸載的情況:

情況一:初始化函數崩潰p

情況二:卸載函數被阻塞

三、蜂鳴器(pwm)驅動:蜂鳴器與LED一樣也是開發板自帶的簡單的硬件,若打開蜂鳴器開發板會發出想蜂鳴一樣的叫聲,關閉就會停止尖叫。蜂鳴器驅動的原理:pwm基本原理通過脈沖來控制蜂鳴器的打開和關閉。

測試蜂鳴器驅動:pwm_fun.c則包含了打開和停止pwm的兩個函數,從Makefile中可以看出,編譯器首先將pwm.c和pwm_fun.c文件編譯成pwm.o和pwm_fun.o,然后再將兩個.o文件連接成pwm_driver.o,最后生成pwm_driver.ko,然后執行build.sh腳本文件,然后就編譯成功了。

輸入如下命令:

./ioctl /dev/pwm_dev 1 0

./ioctl /dev/pwm_dev 0 0

由于命令必須要求輸入I/O命令的參數,而PWM驅動未使用I/O命令參數,所以ioctl最后一個命令行可以任意輸入參數。如果最后顯示如下信息并且蜂鳴器發出尖叫則說明測試成功!

第九章 硬件抽象層:HAL

HAL(Handerware Abstraction Layer,硬件抽象層)是建立在linux程序上的一套程序庫,這套程序庫并不屬于內核,而是屬于內核之上的應用層。

一、為什么要在Android中加入HAL:在linux驅動中一般有兩種類型的代碼:訪問硬件寄存器的代碼和業務邏輯代碼。對于訪問硬件寄存器的代碼而言,并沒有秘密,這都是調用linux內核的標準函數進行的標準操作。Google為android加入HAL其主要目的在于:

統一硬件的調用接口;

解決了GPL版權問題;‘

針對一些特殊要求;

二、andriod HAL架構

在Andriod系統中使用程序庫,條用位于內核空間的Linux驅動,然后Andriod應用程序。

HAL的基本原理是在android系統中使用程序庫調用內核空間的linux驅動。

三、 為LED增加HAL:將所有業務邏輯從LED驅動移植到HAL模塊,而LED驅動模塊只保留讀寫寄存器的工程能。加入HAL會使組成linux驅動的一整套library更加獨立,更加容易維護。編寫一款支持HAL的LINUX程序驅動程序的步驟:1.Linux驅動程序;2.編寫HAL Library;3.編寫Service Library。編寫HAL模塊的步驟:1.定義結構體和宏;2.編寫HAL模塊的open函數;3.定義hw_module_methods_t結構體變量;4.定義HAL_MODULE_INFO_SYM變量;5.編寫HAL模塊的close函數;6.編寫控制LED的函數。

第十章 嵌入式linux的調試技術

對于復雜的linux驅動及HAL等程序庫,需要使用各種方法對其進行調試

一、打印內核調試信息:printK:printK函數與printf函數類似,只不過printK函數運行在內核空間,printf函數運行在用戶空間。也就是說像linux驅動這樣的linux內核程序只能使用printK函數輸出調試信息。

二、防止printK函數降低linux驅動性能:雖然printK函數可以很方便的將消息寫入日志文件或控制臺,大那是大量使用printK函數操控日志文件或控制臺設備文件會嚴重影響linux的驅動性能。只要只在開發階段使用printK函數,在正式發布linux驅動時把有可能影響性能的printK函數去掉。

三、通過虛擬文件系統(/proc)進行數據交互:在linux文件系統中,/proc經常用來被作為用戶空間和內核空間進行數據交互的工具。/proc文件系統的行為方式和設備系統(/dev)的類似。

四、調試工具:gdb,gdbservice,和kgdb。

轉載于:https://www.cnblogs.com/zhaoruixia/p/5638572.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的第三次月考的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄网免费在线观看 | 黄色三级在线视频 | 国产免费无码一区二区 | 看片久久 | 一级a毛片 | 中文字幕精品在线 | 国产艳俗歌舞表演hd | 91色多多| 女生下面流水视频 | 国产又粗又猛又黄又爽视频 | 久久久久亚洲av无码麻豆 | 四虎色播 | www色视频 | 又爽又黄视频 | 新91视频在线观看 | 综合久久久久久久久久久 | 高清av免费观看 | 手机在线看片日韩 | 69xx免费视频 | 国产激情网址 | www.欧美在线| 日韩视频免费在线播放 | 国内9l自拍 | 最新日韩一区 | 国产精品色片 | 爱啪啪导航 | 懂色aⅴ一区二区三区免费 国产精品99在线观看 | 800av免费在线观看 | а√在线中文网新版地址在线 | 午夜激情综合网 | 黑料视频在线观看 | av毛片网| 精品玖玖玖 | 欧美操女人 | 日av在线播放 | 视频福利在线观看 | 欧美色涩 | 在线观看的黄网 | 人人爽人人干 | 黑帮大佬和我的三百六十五天 | 涩涩屋污| 国产精品无码中文字幕 | a毛片| 天天透天天干 | 91免费影片| 大屁股白浆一区二区三区 | 色88久久久久高潮综合影院 | 熟女少妇内射日韩亚洲 | 国产一区日韩精品 | 国精品一区二区三区 | 亚洲综合丁香 | www.爱色av.com | 69视频在线观看免费 | 欧美成人一区二区三区四区 | 黄色av播放| 久久婷婷综合色丁香五月 | 精品99在线 | 香蕉人妻av久久久久天天 | 国产欧美日韩在线观看 | 国产精品一亚洲av日韩av欧 | 亚洲综合激情五月久久 | 天天尻逼 | 男人的天堂亚洲 | 日韩毛片大全 | 亚洲av永久无码精品三区在线 | 久久久久99精品成人片直播 | 3d欧美精品动漫xxxx无尽 | 制服丝袜av在线 | 久久久久久久久99精品 | 国产人人看 | 天天燥日日燥 | 亚洲经典一区二区三区 | 特黄级 | 国产伦精品一区二区三区四区 | 国产欧美日韩综合精品一区 | 永久免费精品影视网站 | 日韩欧美在线视频播放 | 日韩女同一区二区三区 | 嫩草在线观看 | 黄色一级免费片 | 日韩视频免费观看高清 | 天天干夜夜嗨 | 日韩欧美中文一区 | 第一色综合 | 国产亚洲视频在线 | 国产乱论视频 | 国产免费一区二区三区最新6 | 小早川怜子久久精品中文字幕 | 日韩激情四射 | 极品美女一区二区三区 | 肉丝美脚视频一区二区 | 日欧视频 | 三年大片在线观看 | 国产午夜一区 | 久久精品免费在线观看 | 黄色美女一级片 | 色撸撸在线观看 | 欧美亚洲激情视频 | 日韩有码一区 |