亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于嵌入式系統(tǒng)的觸摸屏驅(qū)動(dòng)設(shè)計(jì)與實(shí)現(xiàn)

        2015-06-13 12:53:44王璐凡
        電子測(cè)試 2015年14期
        關(guān)鍵詞:驅(qū)動(dòng)程序數(shù)據(jù)結(jié)構(gòu)觸摸屏

        王璐凡

        (河南理工大學(xué),454000;2.哈密職業(yè)技術(shù)學(xué)院,839000)

        0 引言

        觸摸屏因其具有較高的透光度、精確性,支持觸針和簽名辨識(shí)性,已逐漸成為了控制系統(tǒng)的通用元件。觸摸屏具有全玻璃的耐久性,位于屏幕各個(gè)角落的傳感器可以測(cè)量出振動(dòng)能量,觸摸屏就是利用這些傳感器工作的。通過先進(jìn)的數(shù)字信號(hào)處理,觸摸屏應(yīng)用色散調(diào)整算法來分析信號(hào)并給出精確的觸點(diǎn)坐標(biāo)。這種方法有助于消除因屏幕污染和表面刮擦帶來的問題,而且具有更高的手掌接觸抑制能力。具有輕薄、形狀適合、不易碎且耐磨損特點(diǎn)。作為與用戶交互的終端媒介,觸摸屏在生活中得到廣泛的應(yīng)用。如何在系統(tǒng)中集成觸摸屏模塊以及在嵌入式操作系統(tǒng)中實(shí)現(xiàn)其驅(qū)動(dòng)程序,都成為嵌入式系統(tǒng)設(shè)計(jì)者需要考慮的問題。本文介紹了在S3C2410微處理器的硬件平臺(tái)上進(jìn)行基于嵌入式的觸摸屏驅(qū)動(dòng)程序設(shè)計(jì),實(shí)現(xiàn)對(duì)觸摸屏的操作。

        1 觸摸屏硬件系統(tǒng)構(gòu)成

        S3C6410是Samsung公司基于ARM1176JZF-S核心的一款MCU,集成了眾多的外圍設(shè)備,其中包括四線電阻式觸摸屏控制器,帶有8路模擬輸入通道的ADC。ADC8個(gè)模擬輸入通道中,AIN[5]和AIN[7]分別被設(shè)置為觸摸屏的X方向和Y方向的模擬信號(hào)輸入通道。在獲得XY方向模擬信號(hào)后,然后觸摸屏設(shè)備驅(qū)動(dòng)程序要對(duì)某些寄存器進(jìn)行讀寫,這樣觸摸屏控制器可以管理控制四路信號(hào)的高低電平,以便控制與觸摸屏接口相連的NMOS和PMOS管的閉合,最終按X/Y順序完成觸點(diǎn)模擬信號(hào)的采集。

        本文采用的是S3C2410微處理器與4線電阻式觸摸屏,其電路原理如圖1所示。觸摸屏由橫向和縱向的電阻絲構(gòu)成,可以通過YMON、XMONn、YPON、nXPON四個(gè)控制信號(hào)來控制4個(gè)MOS管的通斷變化。S3C2410微處理器一共有8個(gè)模擬輸入通道,其中通道5是觸摸屏接口的Y坐標(biāo)輸入(圖1的AIN[5]),通道7是觸摸屏接口的X坐標(biāo)輸入(圖1的AIN[7])。電路原理如圖1所示。在接入S3C2410 觸摸屏接口之前,可以通過一個(gè)阻容式低通濾波器來濾除坐標(biāo)信號(hào)噪聲。如果傳遞給S3C2410 模擬輸入接口的信號(hào)干擾太大,不利于后面的軟件處理。在采樣的過程中,S3C2410的觸摸屏控制器會(huì)控制觸摸屏接口來自動(dòng)打開或關(guān)閉各個(gè)MOS管,然后按順序完成X坐標(biāo)點(diǎn)采集和Y坐標(biāo)點(diǎn)采集。

        2 觸摸屏驅(qū)動(dòng)軟件設(shè)計(jì)實(shí)現(xiàn)

        圖1 觸摸屏的硬件連接圖

        2.1 觸摸屏驅(qū)動(dòng)軟件設(shè)計(jì)框圖

        根據(jù)嵌入式系統(tǒng)內(nèi)核設(shè)備驅(qū)動(dòng)程序開發(fā)原理,可以列出的觸摸屏驅(qū)動(dòng)程序的結(jié)構(gòu)層次,內(nèi)核的觸摸屏驅(qū)動(dòng)程序共有三個(gè)部分,包括:觸摸屏事件驅(qū)動(dòng)、觸摸屏輸入核心程序和觸摸屏設(shè)備驅(qū)動(dòng),這三者的邏輯關(guān)系由上到下,上與應(yīng)用程序通信,下控制硬件輸入設(shè)備,示意圖如圖2所示,其中觸摸屏事件驅(qū)動(dòng)是與用戶空間應(yīng)用程序編程接口進(jìn)行交互;而觸摸屏輸入設(shè)備在 serio總線上與觸摸屏設(shè)備驅(qū)動(dòng)程序進(jìn)行通訊,底層觸摸屏設(shè)備硬件響應(yīng)用戶輸入操作時(shí)在觸摸屏設(shè)備驅(qū)動(dòng)中被轉(zhuǎn)換預(yù)先定義的標(biāo)準(zhǔn)輸入事件之后再被設(shè)備驅(qū)動(dòng)向上報(bào)告給輸入核心層,然后輸入核心程序?qū)?biāo)準(zhǔn)事件上報(bào)給觸摸屏事件驅(qū)動(dòng),在這里處理觸摸屏的輸入事件。因此觸摸屏設(shè)備驅(qū)動(dòng)只負(fù)責(zé)對(duì)觸摸屏的硬件寄存器的數(shù)據(jù)讀寫和向上提交檢測(cè)到的輸入事件。

        2.2 觸摸屏驅(qū)動(dòng)軟件設(shè)計(jì)程序框圖

        由于用戶會(huì)在什么時(shí)候會(huì)進(jìn)行觸摸動(dòng)作的時(shí)間不確定, 因此采用中斷方式工作對(duì)整個(gè)系統(tǒng)設(shè)計(jì)是比較好的選擇。首先,在進(jìn)行觸摸屏程序設(shè)計(jì)時(shí),要對(duì)其進(jìn)行基本的初始化操作。其中最重要的是將S3C2410 的觸摸屏控制接口設(shè)置為自動(dòng) X / Y 坐標(biāo)轉(zhuǎn)換模式和等待中斷模式。一旦觸摸筆按下,S3C2410觸摸屏控制器就會(huì)產(chǎn)生一個(gè)觸摸中斷INT_TC,然后在進(jìn)入INT_TC中斷程序后觸摸屏控制器會(huì)利用S3C2410 的自動(dòng)X/Y 軸坐標(biāo)轉(zhuǎn)換模式將代表 X/Y 坐標(biāo)的 AD 電壓值讀出來。觸摸屏驅(qū)動(dòng)程序要實(shí)現(xiàn)以下 5 個(gè)主要任務(wù),具體步驟如圖3的驅(qū)動(dòng)程序流程圖:

        圖2 觸摸屏驅(qū)動(dòng)軟件設(shè)計(jì)框圖

        2.3 觸摸屏驅(qū)動(dòng)設(shè)計(jì)的部分重要函數(shù)

        (1)在設(shè)備驅(qū)動(dòng)程序中,用數(shù)據(jù)結(jié)構(gòu)strcut driver定義一系列的函數(shù)操作接口,用這個(gè)數(shù)據(jù)結(jié)構(gòu)將整個(gè)驅(qū)動(dòng)連為一體,通過數(shù)據(jù)結(jié)構(gòu)strcut driver能夠看出整個(gè)驅(qū)動(dòng)的脈絡(luò)。由于觸摸屏與CPU是利用是SPI總線連接的連接方式,因此要用到數(shù)據(jù)結(jié)構(gòu) struct spi_driver來將此設(shè)備注冊(cè)為 SPI 設(shè)備。

        圖3 觸摸屏驅(qū)動(dòng)程序流程圖

        設(shè)計(jì)編寫的數(shù)據(jù)結(jié)構(gòu)如下:

        static struct spi_driver ad7873_driver = {.driver = {

        .name = "ad7873",

        .bus = &spi_bus_type,

        .owner = THIS_MODULE,

        },

        .probe = ad7873_probe,

        .remove = __devexit_p(ad7873_emove),

        .suspend = ad7873_suspend,

        .resume = ad7873_resume,

        };

        在數(shù)據(jù)結(jié)構(gòu)中,driver函數(shù)中定義了總線類型、驅(qū)動(dòng)名稱和驅(qū)動(dòng)所有者。probe函數(shù)為觸摸屏探測(cè)設(shè)備函數(shù),其主要的作用就是對(duì)設(shè)備數(shù)據(jù)結(jié)構(gòu)以及中斷進(jìn)行初始化、向設(shè)備發(fā)送控制字等。remove函數(shù)作為設(shè)備的移除函數(shù),其主要作用是移除設(shè)備文件、釋放中斷和設(shè)備。Suspend是設(shè)備的暫停函數(shù)。Resume是設(shè)備的恢復(fù)函數(shù)。

        (2)設(shè)備初始化函數(shù) static int __init ad7873_nit(void)即是注冊(cè)上述數(shù)據(jù)結(jié)構(gòu),也是注冊(cè)一個(gè)驅(qū)動(dòng),初始化函數(shù)主要的內(nèi)容為:

        return spi_register_driver(&ad7873_driver);

        (3)中斷函數(shù)也是觸摸屏驅(qū)動(dòng)設(shè)計(jì)的一個(gè)重要函數(shù),當(dāng)觸摸屏被安按下是產(chǎn)生中斷,執(zhí)行中斷函數(shù)。啟動(dòng)定時(shí)器是中斷函數(shù)中的重要工作,用來判斷觸摸發(fā)生后觸摸筆是被提起還是繼續(xù)按下。中斷函數(shù)原型設(shè)計(jì)為:

        static irqreturn_t ads7873_irq(int irq, void*handle);

        (4)用來判斷觸摸屏是否已經(jīng)被提起需要用定時(shí)器函數(shù),一旦觸摸筆被提起就立刻將新設(shè)備的數(shù)據(jù)刷新到應(yīng)用層,否則就需要進(jìn)行另外的測(cè)量。定時(shí)器函數(shù)原型設(shè)計(jì)為:

        static void ads7873_timer(unsigned long handle);

        3 結(jié)論

        在完成了觸摸屏基本控制之后,進(jìn)行后續(xù)的SD卡、文件系統(tǒng)的讀寫 功能。本文介紹了基于S3C2410微處理器,利用觸摸屏與S3C2410的接口,及中斷與查詢兩種方式的優(yōu)點(diǎn),用外部晶體管連接觸摸屏到S3C2410的接 口電路,并通過S3C241的等待中斷模式和自動(dòng)XY坐標(biāo)轉(zhuǎn)換工作模式,讀出與 XY坐標(biāo)有關(guān)的電壓值,高效地完成了觸摸狀態(tài)的檢測(cè)以及觸摸數(shù)據(jù)的轉(zhuǎn)換,基于嵌入式系統(tǒng)的觸摸屏驅(qū)動(dòng)設(shè)計(jì)方法具有簡(jiǎn)單便捷、易于實(shí)現(xiàn)的特點(diǎn)。

        [1]胡思捷.基于Android平臺(tái)的觸摸屏系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)[D].天津:南開大學(xué).2011.

        [2]劉瑞.觸摸屏技術(shù)及其性能分析[J].裝備制造技術(shù).2010.

        [3]李善平、劉文峰、王煥龍.Linux與嵌入式系統(tǒng)[M].清華大學(xué)出版社.2006.

        猜你喜歡
        驅(qū)動(dòng)程序數(shù)據(jù)結(jié)構(gòu)觸摸屏
        PLC和觸摸屏在衛(wèi)生間控制系統(tǒng)的應(yīng)用
        皮膚“長(zhǎng)”出觸摸屏
        “翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
        高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
        TRIZ理論在“數(shù)據(jù)結(jié)構(gòu)”多媒體教學(xué)中的應(yīng)用
        投射式多點(diǎn)觸控電容觸摸屏
        河南科技(2014年12期)2014-02-27 14:10:32
        《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法創(chuàng)新探討
        河南科技(2014年5期)2014-02-27 14:08:57
        觸摸屏項(xiàng)目移植在自動(dòng)化系統(tǒng)升級(jí)中的應(yīng)用
        驅(qū)動(dòng)程序更新與推薦
        驅(qū)動(dòng)程序更新與推薦
        男女视频网站在线观看| 国产欧美精品一区二区三区–老狼 | 亚洲精品一区二区成人精品网站| 国产av熟女一区二区三区| 最近日本免费观看高清视频| 99久久免费国产精品2017| 热热久久超碰精品中文字幕| 亚洲av无一区二区三区| 女局长白白嫩嫩大屁股| 亚洲午夜精品久久久久久人妖| 国产亚洲无码1024| 国产精品成人av一区二区三区| 又色又爽又黄高潮的免费视频 | 亚洲国产精品成人一区二区三区| 桃红色精品国产亚洲av| 国产精品9999久久久久| 久久一区二区三区四区| 高潮av一区二区三区| 日韩 无码 偷拍 中文字幕| 亚洲欧美一区二区三区| 日本道免费精品一区二区| 看国产亚洲美女黄色一级片| 国产欧美va欧美va香蕉在| 人人妻人人玩人人澡人人爽 | 视频在线亚洲视频在线| 内射夜晚在线观看| 日韩精品一区二区亚洲av| 少妇特殊按摩高潮惨叫无码| 精品久久中文字幕系列| 成人国产精品一区二区视频 | 亚洲熟妇少妇任你躁在线观看| 亚洲免费成年女性毛视频| 国产一区二区三区在线观看完整版| 天堂aⅴ无码一区二区三区| 亚洲国产精品国语在线| 麻豆视频黄片在线免费观看| 亚洲精品国产精品国自产| 久久精品无码鲁网中文电影| 91精品国产色综合久久不| 伊人情人色综合网站| 国产精品高潮呻吟av久久4虎|