新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于S3C2410微處理器的觸摸屏設計

        基于S3C2410微處理器的觸摸屏設計

        作者: 時間:2013-02-19 來源:網絡 收藏

        基于S3C2410微處理器的觸摸屏設計
        圖4 定時中斷服務程序流程圖

        在s3c2410_ts_init()中的另一個重要任務是執行接口函數s3c2410_ts_open(),在這個函數中初始化緩沖區的頭尾指針、狀態變量及事件等待隊列。

        module_exit()

        該函數調用s3c2410_ts_exit(),主要任務是撤銷驅動程序向內核的登記以及釋放申請的中斷資源。

        接口函數s3c2410_ts_read( )

        這個函數實現的任務是將事件隊列從設備緩存中讀到用戶空間的數據緩存中。實現的過程主要是通過一個循環,只有在事件隊列的頭、尾指針不重合時,才能成功的從tsdev.tail指向的隊列尾部讀取到一組觸摸信息數據,并退出循環。否則調用讀取函數的進程就要進入睡眠。

        坐標讀取函數s3c2410_get_XY()

        在定時器中斷處理程序中,當查詢到與相連的EINT5/GPF5為低電平時,即表示有有效事件,應該調用s3c2410_get_XY()函數采集筆觸信息。

        ADS7843有多種轉換時序,時序規定了芯片與設備及CPU間是如何配合工作的。設計中采用16個時鐘周期啟動一次轉換的坐標轉換方式。ADS7843的操作時序如圖5所示。坐標的讀取是通過多次采集取平均值的方法,以X坐標的讀取為例,其讀取過程如圖6所示。循環過程中的每一步都在8個時鐘周期內完成,數據的處理嚴格按照時序進行,Y坐標的采集與X坐標類似。

        基于S3C2410微處理器的觸摸屏設計
        圖5 ADS7843操作時序

        基于S3C2410微處理器的觸摸屏設計
        圖6 X坐標采集流程

        結語

        的設計中,抗干擾設計是難點和重點,直接關系到觸摸屏的工作性能。實驗發現坐標采集時,丟棄第一次采集值讀取的坐標轉換值效果較好。本文所介紹的驅動程序已經在博創公司的教學實驗設備UP-NETARM2410-S平臺上經過實際驗證,從數據穩定性和系統負載的角度看,效果良好。同時通過修改程序內部的定時器時鐘頻率可以改變筆在屏上移動所產生的數據量。

        參考文獻:

        1. 毛德操,胡希明著.Linux內核源代碼情景分析.杭州:浙江大學出版社,2001

        2. 孫天澤,袁文菊,張海峰等.嵌入式設計及Linux驅動開發指南.北京:電子工業出版社,2005

        3. R Love. Linux內核設計與實現. 陳莉君,康華,張波等譯.北京:機械工業出版社,2006

        4. 殷惠莉,劉少君,黃道平.基于uClinux觸摸屏的設計.電子工程師.2004(2) .


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 满洲里市| 虎林市| 且末县| 绩溪县| 黄大仙区| 闽清县| 镇沅| 延庆县| 潜江市| 上思县| 望谟县| 新疆| 济阳县| 大埔区| 衡山县| 西安市| 格尔木市| 仪征市| 隆林| 化隆| 蒲城县| 托克逊县| 白沙| 东兰县| 渝中区| 乐都县| 南江县| 宁都县| 扎赉特旗| 定西市| 九龙城区| 自贡市| 原平市| 黄陵县| 博爱县| 白朗县| 九龙城区| 乐清市| 临湘市| 陇南市| 曲周县|