關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于μClinux的觸摸屏軟硬件關鍵技術分析

        基于μClinux的觸摸屏軟硬件關鍵技術分析

        作者: 時間:2008-11-26 來源:網絡 收藏
        軟件設計

          μ的特點

          μ繼承了Linux的設備管理方法,將所有的設備看做具體的文件,通過文件系統層對設備進行訪問。所以在的框架結構中,和設備相關的處理可以分為兩個層次——文件系統層和設備驅動層。設備驅動層屏蔽具體設備的細節,文件系統層則向用戶提供一組統一的規范的用戶接口。這種設備管理方法可以很好地做到“與設備無關性”,使Clinux可以根據硬件外設的發展進行方便的擴展,比如要實現一個設備,只要根據具體的硬件特性向文件系統提供一組訪問接口即可。

          μClinux中的設備可以分為3類:字符設備、塊設備和網絡設備。其中字符設備沒有緩沖區,數據的處理是以字節為單位按順序進行的,它不支持隨機讀寫,觸摸屏即屬于字符設備的一種。

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

          向內核注冊一個字符設備的函數為:externintregister_chrdev(unsignedintmajor,constchar*name, structfile_operations*fops);內核用主和次惟一地標識一個設備。參數major對應所請求的主,name對應設備的名字,fops是一個指向file_operations結構的指針,它是Clinux下編寫驅動程序用到的一個關鍵的數據結構,它提供了應用空間與驅動程序的調用接口。這個數據結構的每一項都指向驅動程序完成的一個功能。

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

          staticstruct file_operations ts_fops={

          owner:THIS_MODULE,



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泸西县| 平度市| 永泰县| 茌平县| 铁岭县| 开江县| 精河县| 景东| 宁武县| 石台县| 化德县| 友谊县| 临海市| 宣恩县| 徐闻县| 丰顺县| 廉江市| 五河县| 邢台县| 喀喇| 邵东县| 多伦县| 阳山县| 西贡区| 淅川县| 莎车县| 休宁县| 梧州市| 奎屯市| 保德县| 慈溪市| 黎川县| 夏河县| 尼勒克县| 临沭县| 巩义市| 汕头市| 光山县| 玉林市| 黄冈市| 凤台县|