linux字符設(shè)備驅(qū)動(dòng)篇.ppt

linux字符設(shè)備驅(qū)動(dòng)篇.ppt

ID:52267622

大?。?90.51 KB

頁數(shù):11頁

時(shí)間:2020-04-03

linux字符設(shè)備驅(qū)動(dòng)篇.ppt_第1頁
linux字符設(shè)備驅(qū)動(dòng)篇.ppt_第2頁
linux字符設(shè)備驅(qū)動(dòng)篇.ppt_第3頁
linux字符設(shè)備驅(qū)動(dòng)篇.ppt_第4頁
linux字符設(shè)備驅(qū)動(dòng)篇.ppt_第5頁
資源描述:

《linux字符設(shè)備驅(qū)動(dòng)篇.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、基于GPRS遠(yuǎn)程安防監(jiān)控系統(tǒng)作者:261676224項(xiàng)目描述本裝置可以通過傳感器采集現(xiàn)場(chǎng)火警【溫度傳感器模擬】等數(shù)據(jù),通過攝像頭采集現(xiàn)場(chǎng)圖像,通過紅外傳感器【按鍵模擬】是否有人進(jìn)入現(xiàn)場(chǎng),在異常情況下給用戶發(fā)送短信同時(shí)并報(bào)警;用戶可以通過INTERNET登陸監(jiān)控機(jī)的主頁,在主頁上觀察監(jiān)控機(jī)采集到的現(xiàn)場(chǎng)數(shù)據(jù),以及現(xiàn)場(chǎng)是否有人進(jìn)入過,通過攝像頭采集現(xiàn)場(chǎng)圖像或?qū)ΜF(xiàn)場(chǎng)進(jìn)行實(shí)時(shí)監(jiān)控實(shí)現(xiàn)功能KEY1-啟動(dòng)報(bào)警KEY2-解除報(bào)警LED1-運(yùn)行狀態(tài)提示燈LED2-溫度過限提示燈LED3-阻值過限提示燈LED4-網(wǎng)頁控制LED燈---------

2、-------------------------------------------------------------------------------采集到的阻值及溫度數(shù)據(jù)全部存入數(shù)據(jù)庫實(shí)時(shí)監(jiān)控終端界面可以修改阻值、溫度閥值、或者主要控制蜂鳴器或LED燈驅(qū)動(dòng)篇module_init(xxx_init)module_exit(xxx_exit)intinit_module(int)voidinit_module(void)insmod[裝載]rmmod[卸載]lsmod[查看]驅(qū)動(dòng)篇如何編寫一個(gè)字符設(shè)備驅(qū)動(dòng)?編寫驅(qū)動(dòng)準(zhǔn)備

3、首先對(duì)驅(qū)動(dòng)所涉及到的硬件相關(guān)進(jìn)行了解,包括其可實(shí)現(xiàn)的功能,需要配置的寄存器等,當(dāng)然我們可以先實(shí)現(xiàn)裸驅(qū)程序正常執(zhí)行,看看運(yùn)行狀態(tài),然后再考慮如何將其編寫為驅(qū)動(dòng)模塊驅(qū)動(dòng)編寫思想可以把驅(qū)動(dòng)作為一個(gè)接口函數(shù),功能當(dāng)然也體現(xiàn)在接口函數(shù)上,可以使用多個(gè)函數(shù)來實(shí)現(xiàn)不同的功能,然后供給上層應(yīng)用層的調(diào)用驅(qū)動(dòng)加載模式如何加載?驅(qū)動(dòng)模塊加載方式的選擇根據(jù)需要來決定,如果僅為調(diào)試使用,建議以命令insmod方式加載,rmmod方式卸載,否則可以以靜態(tài)方式加載,用makemenuconfig來選配,生成zImage驅(qū)動(dòng)篇int(*release)(st

4、ructinode*,structfile*);int(*open)(structinode*,structfile*);DEMO1?register_chrdev_region(xx_devnumber,1,“driver_name”);alloc_chrdev_region(&xx_devnumber,1,“driver_name”);register_chrdev_region(xx_devnumber,1);cdev_addcdev_initIounmap()驅(qū)動(dòng)篇DEMO2?platform_device_regis

5、ter(xx_device);platform_device_unregister(xx_device);-------------------------------------------------------------------------------------------------------------------structplatform_devicexx_device=

6、structxx_device_resource={{

7、[0]={.name=“xx_d”,

8、.start=0XE03001C0,.

9、id=-1,

10、.end=0XE03001C0+0X3,.resource=xx_device_resource,

11、.flags=IORESOURCE_MEM,.num_resource=?,

12、},.dev={

13、[1]={.release=myrelease,}

14、…};

15、}Voidmyrelease(structdevice*dev){}

16、}xx_device.c驅(qū)動(dòng)篇DEMO2?platform_driver_register(xx_driver);platform_driver_unregister(xx_driver);-

17、------------------------------------------------------------------------------------------------------------------structplatform_driverxx_driver={.driver={.name=“xx_d”,},.probe=xx_init,--->xx_init(structplatform_device*xx_device).remove=xx_exit,--->xx_exit(structpla

18、tform_device*xx_device)};-----------------------------------------------------------------------------------------------------------------

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。