www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 顯示光電 > 顯示光電
[導讀]引言觸摸屏作為一種輸入設(shè)備,具有堅固耐用、反應(yīng)速度快、節(jié)省空間、易于交流等優(yōu)點,提供簡單、方便、自然的人機交互方式,目前被廣泛應(yīng)用于工業(yè)控制、電子查詢、消費性電產(chǎn)品領(lǐng)域。Linux作為是目前最流行的操作系統(tǒng)

引言

觸摸屏作為一種輸入設(shè)備,具有堅固耐用、反應(yīng)速度快、節(jié)省空間、易于交流等優(yōu)點,提供簡單、方便、自然的人機交互方式,目前被廣泛應(yīng)用于工業(yè)控制、電子查詢、消費性電產(chǎn)品領(lǐng)域。

Linux作為是目前最流行的操作系統(tǒng)之一,在桌面系統(tǒng)、服務(wù)器領(lǐng)域有大量用戶,具有源代碼開放,支持的硬件豐富、高可移植等優(yōu)點,在嵌入式領(lǐng)域也備受青睞。Linux根據(jù)不同設(shè)備,將驅(qū)動程序分為字符設(shè)備驅(qū)動、塊設(shè)備驅(qū)動、網(wǎng)絡(luò)設(shè)備驅(qū)動三種,Linux輸入子系統(tǒng)u是對字符類型輸入設(shè)備驅(qū)動實現(xiàn)方式的抽象,是對分散的、多種不同類別的輸入設(shè)備進行統(tǒng)一處理的內(nèi)核驅(qū)動模型。輸入子系統(tǒng)具高效、無Bug和可重用等優(yōu)點。本文對基于Linux輸入子系統(tǒng)的觸摸屏驅(qū)動進行深入的討論。

1  硬件平臺

S3C2440是三星公司推出的采用ARM920t內(nèi)核的MCU,集成了豐富的外圍設(shè)備,其中包括4線電阻式觸摸屏控制器和8通道多路復(fù)用ADC。

觸摸屏由觸摸檢測部件和觸摸屏控制器構(gòu)成,對應(yīng)S3C2440平臺的四線電阻觸摸屏的外接電路和S3C2440芯片自帶的A/D轉(zhuǎn)換控制部分。四線電阻觸摸屏的外接電路控制上下兩層導電層的通斷情況以及如何取電壓,取電壓之后由S3C2440芯片中的A/D將模擬量轉(zhuǎn)換成數(shù)字量。S3C2440芯片的A/D轉(zhuǎn)換器有8個輸入通道,轉(zhuǎn)換結(jié)果為10bit數(shù)字,轉(zhuǎn)換過程在芯片內(nèi)部自動實現(xiàn),轉(zhuǎn)換的結(jié)果從寄存器中取值,再進行一定的轉(zhuǎn)后可直接得到觸摸點的坐標。S3C2440提供的ADC和觸摸屏接口如圖1所示,觸摸屏直接與引腳XP,XM,YP和YM連接,對觸摸屏兩個導電層的通斷通過XP,XM,YP和YM4個引腳控制。通過讀寫指定的特殊寄存器,S3C2440的觸摸屏控制器將自動控制觸摸屏接口打開或關(guān)閉,按指定操作模式完成觸點數(shù)據(jù)的采集。

2  輸入子系統(tǒng)體系結(jié)構(gòu)簡介

設(shè)備驅(qū)動程序在Linux內(nèi)核中占很重要地位,設(shè)備驅(qū)動以內(nèi)核模塊方式實現(xiàn),可動態(tài)加載和卸載。Linux設(shè)備驅(qū)動的實現(xiàn)只需根據(jù)內(nèi)核提供的一組相關(guān)數(shù)據(jù)結(jié)構(gòu)和驅(qū)動接口標準,完成關(guān)鍵數(shù)據(jù)結(jié)構(gòu)初始化和回調(diào)函數(shù)的編寫。對字符設(shè)備驅(qū)動內(nèi)核提供cdev數(shù)據(jù)結(jié)構(gòu)和file_operatiONs結(jié)構(gòu)體及操作方法,實現(xiàn)字符設(shè)備驅(qū)動只需完成cdev的初始化、file_operations中操作函數(shù)的實現(xiàn)并向內(nèi)核注冊。

Linux輸入子系統(tǒng)是對物理形態(tài)各異的功能相似的輸入設(shè)備的抽象,是內(nèi)核中字符設(shè)備驅(qū)動接口的封裝。輸入子系統(tǒng)由設(shè)備驅(qū)動層、核心層和事件處理層構(gòu)成。設(shè)備驅(qū)動層提供對硬件各寄存器的讀寫訪問和將底層硬件對用戶輸入訪問的響應(yīng)轉(zhuǎn)換為標準的輸入事件,通過核心層提交給事件處理層;核心層對設(shè)備驅(qū)動層提供編程接口,對事件處理層的也提供編程接口;事件處理層為用戶空間的應(yīng)用程序提供了統(tǒng)一訪問設(shè)備的接口和驅(qū)動層提交來的事件處理。基于輸入子系統(tǒng)設(shè)計驅(qū)動時要實現(xiàn)設(shè)備驅(qū)動層的驅(qū)動和事件處理層的驅(qū)動,而輸入子系統(tǒng)在事件處理層為觸摸屏提供標準的事件接口,所以只要須完成設(shè)備驅(qū)動層的驅(qū)動,即硬件寄存器的操作和提交輸入事件信息?;谳斎胱酉到y(tǒng)的設(shè)備驅(qū)動層驅(qū)動的實現(xiàn)過程如下:

1)驅(qū)動模塊加載函數(shù)中設(shè)置輸入設(shè)備支持輸入子系統(tǒng)的事件;Linux內(nèi)核用input_dev代表一個輸入設(shè)備,對于觸摸屏通過對input_dev實例的evbit[0]的設(shè)置來支持同步(EN_SYN)、按鍵(EN_KEY)和絕對坐標(EV_ABS)事件。

2)通過內(nèi)核提供的input_regiSTer_device0函數(shù)向輸入子系統(tǒng)注冊輸入設(shè)備。

3)輸入設(shè)備發(fā)生輸入操作時提交所發(fā)生的事件及對應(yīng)鍵值或坐標等狀態(tài)信息。觸摸屏使用輸入子系統(tǒng)提供的通用輸入事件驅(qū)動程序Evdev,將事件信息打包成Input_event類型進行報告。

3  Linux觸摸屏驅(qū)動的實現(xiàn)

3.1 觸摸屏觸點數(shù)據(jù)采集

S3C2440觸摸屏控制器有四種工作模式,通過讀寫ADCTSC、ADCDA、ADCDATl和ADCDLY寄存器完成觸摸屏控制器工作模式的選擇和觸摸屏觸點數(shù)據(jù)采集。由于觸摸動作時間的隨機性,驅(qū)動設(shè)計時選擇中斷工作方式。設(shè)置ADCTSC寄存器為0xD3使觸摸屏控制器進入等待中斷模式,設(shè)置ADCDLY采樣延遲時間。當觸摸屏被按下,觸摸屏控制器將產(chǎn)生INT_TC中斷:在ⅡTC中斷處理程序中,設(shè)置ADCTSC寄存器為0x0C,觸摸屏控制器切換為自動X/Y坐標轉(zhuǎn)換模式,將自動轉(zhuǎn)換觸點對應(yīng)的x,y坐標值,并分別寫入ADCDAT0寄存器和ADCDTA1寄存器,發(fā)出INTADC中斷表示ADC轉(zhuǎn)換完成;進入INT_ADC中斷處理程序讀取ADCDAT0寄存器和ADCDTA1寄存器中坐標數(shù)據(jù)并進行相應(yīng)轉(zhuǎn)換,數(shù)據(jù)采集后重新設(shè)置ADCTSC寄存器為0xD3使觸摸屏控制器進入等待中斷模式,等待觸摸屏被按下。

3.2 驅(qū)動初始化模塊

Linux驅(qū)動程序以內(nèi)核模塊方式加載運行。實現(xiàn)驅(qū)動加載函數(shù)s3c2440ts_init()并通過module_init(s3c2440ts_init)向內(nèi)核注冊。在驅(qū)動加載函數(shù)主要完成:啟用ADC所需要的時鐘、映射10地址、初始化ADC和觸摸屏控制器相關(guān)的寄存器、申請INT_TS和INT_ADC中斷、初始化輸入設(shè)備、將輸入設(shè)備注冊到輸入子系統(tǒng)。關(guān)鍵代碼如下:

3.3 中斷處理程序及事件報告

用戶對觸摸屏進行按下、抬起和拖動等操作時,觸發(fā)中斷INT_TS,內(nèi)核進入到中斷處理函數(shù)tc_irq0進行中斷處理。tcirq0中,通過ADC—LOCK鎖機制保證只有一個驅(qū)動程序使用ADC的中斷線,通過讀取ADCDAT0和ADCDAT1寄存器,判斷觸摸操作的狀態(tài),觸摸筆按下時調(diào)用ts_timer_fireO進行數(shù)據(jù)轉(zhuǎn)換。當數(shù)據(jù)轉(zhuǎn)換完成時產(chǎn)進INT_ADC中斷,內(nèi)核進入中斷處理函數(shù)adc—irqO,adc_irq()完成觸點信息采集并調(diào)用ts_timer_fire()進行事件報告。事件報告流程如圖2所示。

ts_timer_fire0是主要完成觸點坐標信息向應(yīng)用層報告。updown、count為靜態(tài)全局變量,updown觸點狀態(tài),count代表1個jiffies時間內(nèi)ADC轉(zhuǎn)換的次數(shù),count為0,設(shè)置自動X/Y軸坐標轉(zhuǎn)換模式,轉(zhuǎn)換完成后產(chǎn)生相應(yīng)的INT_ADC中斷通知轉(zhuǎn)換完畢。count不為0,input_report_abs()函數(shù)向輸入子系統(tǒng)報告X,Y絕對坐標事件,inputreport_key()觸摸屏對應(yīng)按鍵被按下事件,輸入子系統(tǒng)使用inputsync()將報告的事件組成一個evdev包,通過/dev/input/eventX發(fā)送出去,應(yīng)用程序通過讀取/dev/input/eventX即可獲得事件信息。關(guān)鍵代碼如下:

4  結(jié)論

隨著信息技術(shù)的快速發(fā)展,嵌入式技術(shù)與人們的生活越來越緊密,觸摸屏作為一種新型輸入設(shè)備因具有輕便、占用空間少、方便靈活等優(yōu)點,應(yīng)用逐漸普及,甚至在工業(yè)領(lǐng)域也得到了大量的應(yīng)用,提高了我國工控自動化的水平。要充分發(fā)揮觸摸屏的優(yōu)點,嵌入式中驅(qū)動設(shè)計至關(guān)重要。嵌入式Linux中基于輸入子系統(tǒng)實現(xiàn)觸摸屏驅(qū)動時,利用了Linux輸入子系統(tǒng)提供標準事件接口,簡化了驅(qū)動設(shè)計,驅(qū)動設(shè)計的重點變成了觸摸屏控制器相關(guān)的硬件操作及功能實現(xiàn),充分體現(xiàn)Linux內(nèi)核代碼的高可重性,對其他類型輸入設(shè)備驅(qū)動程序的設(shè)計有一定參考作用。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉