国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于μClinux的觸摸屏軟硬件關(guān)鍵技術(shù)分析

基于μClinux的觸摸屏軟硬件關(guān)鍵技術(shù)分析

作者: 時(shí)間:2008-11-26 來源:網(wǎng)絡(luò) 收藏
軟件設(shè)計(jì)

  μ的特點(diǎn)

  μ繼承了Linux的設(shè)備管理方法,將所有的設(shè)備看做具體的文件,通過文件系統(tǒng)層對(duì)設(shè)備進(jìn)行訪問。所以在的框架結(jié)構(gòu)中,和設(shè)備相關(guān)的處理可以分為兩個(gè)層次——文件系統(tǒng)層和設(shè)備驅(qū)動(dòng)層。設(shè)備驅(qū)動(dòng)層屏蔽具體設(shè)備的細(xì)節(jié),文件系統(tǒng)層則向用戶提供一組統(tǒng)一的規(guī)范的用戶接口。這種設(shè)備管理方法可以很好地做到“與設(shè)備無關(guān)性”,使Clinux可以根據(jù)硬件外設(shè)的發(fā)展進(jìn)行方便的擴(kuò)展,比如要實(shí)現(xiàn)一個(gè)設(shè)備,只要根據(jù)具體的硬件特性向文件系統(tǒng)提供一組訪問接口即可。

  μClinux中的設(shè)備可以分為3類:字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備。其中字符設(shè)備沒有緩沖區(qū),數(shù)據(jù)的處理是以字節(jié)為單位按順序進(jìn)行的,它不支持隨機(jī)讀寫,觸摸屏即屬于字符設(shè)備的一種。

  在內(nèi)核中裝載的方式有兩種:一種是直接編譯進(jìn)內(nèi)核,在系統(tǒng)初始化的時(shí)候就對(duì)設(shè)備進(jìn)行注冊(cè);一種是模塊化加載的方法,將驅(qū)動(dòng)程序編譯成目標(biāo)文件(*.o),需要添加設(shè)備時(shí),使用insmod命令向系統(tǒng)注冊(cè),停止使用時(shí),用rmmod命令卸載。對(duì)于觸摸屏這種基本的輸入工具,建議采取直接編譯進(jìn)內(nèi)核的方式,這樣系統(tǒng)一啟動(dòng)就可以使用了。

  向內(nèi)核注冊(cè)一個(gè)字符設(shè)備的函數(shù)為:externintregister_chrdev(unsignedintmajor,constchar*name, structfile_operations*fops);內(nèi)核用主和次惟一地標(biāo)識(shí)一個(gè)設(shè)備。參數(shù)major對(duì)應(yīng)所請(qǐng)求的主,name對(duì)應(yīng)設(shè)備的名字,fops是一個(gè)指向file_operations結(jié)構(gòu)的指針,它是Clinux下編寫驅(qū)動(dòng)程序用到的一個(gè)關(guān)鍵的數(shù)據(jù)結(jié)構(gòu),它提供了應(yīng)用空間與驅(qū)動(dòng)程序的調(diào)用接口。這個(gè)數(shù)據(jù)結(jié)構(gòu)的每一項(xiàng)都指向驅(qū)動(dòng)程序完成的一個(gè)功能。

  在2.4版本內(nèi)核中對(duì)該結(jié)構(gòu)采取標(biāo)記結(jié)構(gòu)初始化語法(TaggedStructureInitializationSyntax),與2.0內(nèi)核比較,這種語法可移植性更好,程序的可讀性和代碼的緊湊性都比較好。以觸摸屏為例:

  staticstruct file_operations ts_fops={

  owner:THIS_MODULE,



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉