0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

雅特力AT32 MCU實(shí)現(xiàn)SPI驅(qū)動(dòng)觸摸屏應(yīng)用程序的一般方法

雅特力 AT32 MCU ? 2024-01-19 08:14 ? 次閱讀

對(duì)于四線電阻式觸摸屏的結(jié)構(gòu)如下圖1,在玻璃或丙烯酸基板上覆蓋有兩層透平,均勻?qū)щ姷腎TO層,分別做為X電極和Y電極,它們之間由均勻排列的透明格點(diǎn)分開(kāi)絕緣。其中下層的ITO與玻璃基板附著,上層的ITO附著在PET薄膜上。X電極和Y電極的正負(fù)端由“導(dǎo)電條”(圖中黑色條形部分)分別從兩端引出,且X電極和Y電極導(dǎo)電條的位置相互垂直。引出端X-,X+,Y-,Y+一共四條線,這就是四線電阻式觸摸屏名稱(chēng)的由來(lái)。當(dāng)有物體接觸觸摸屏表面并施以一定的壓力時(shí),上層的ITO導(dǎo)電層發(fā)生形變與下層ITO發(fā)生接觸,該結(jié)構(gòu)可以等效為相應(yīng)的電路,如下圖2。圖1. 觸摸屏結(jié)構(gòu)圖b634938a-b65f-11ee-aa22-92fbcf53809c.png

圖2. 觸摸屏等效電路

b641aba6-b65f-11ee-aa22-92fbcf53809c.png

計(jì)算觸點(diǎn)的X,Y坐標(biāo)分為如下兩步:1) 計(jì)算Y坐標(biāo),在Y+電極施加驅(qū)動(dòng)電壓Vdrive,Y-電極接地,X+做為引出端測(cè)量得到接觸點(diǎn)的電壓,由于ITO層均勻?qū)щ?,觸點(diǎn)電壓與Vdrive電壓之比等于觸點(diǎn)Y坐標(biāo)與屏高度之比。2) 計(jì)算X坐標(biāo),在X+電極施加驅(qū)動(dòng)電壓Vdrive,X-電極接地,Y+做為引出端測(cè)量得到接觸點(diǎn)的電壓,由于ITO層均勻?qū)щ?,觸點(diǎn)電壓與Vdrive電壓之比等于觸點(diǎn)X坐標(biāo)與屏寬度之比。

測(cè)得的電壓通常由ADC轉(zhuǎn)化為數(shù)字信號(hào),再進(jìn)行簡(jiǎn)單處理就可以做為坐標(biāo)判斷觸點(diǎn)的實(shí)際位置。四線電阻式觸摸屏除了可以得到觸點(diǎn)的X/Y坐標(biāo),還可以測(cè)得觸點(diǎn)的壓力,這是因?yàn)閠op layer施壓后,上下層ITO發(fā)生接觸,在觸點(diǎn)上實(shí)際是有電阻存在的。壓力越大,接觸越充分,電阻就越小,通過(guò)測(cè)量這個(gè)電阻的大小可以量化壓力大小。

通常在觸摸屏應(yīng)用中對(duì)于觸摸屏控制有專(zhuān)門(mén)的控制芯片,主要就是為了完成兩個(gè)任務(wù):其一,完成電極電壓的切換;其二,采集接觸點(diǎn)處的電壓值(ADC數(shù)據(jù))。本案例中觸摸屏使用的觸摸感應(yīng)驅(qū)動(dòng)芯片為XPT2046,顯示器驅(qū)動(dòng)芯片為ILI9341,下面將分別做介紹。

觸摸感應(yīng)器

觸摸感應(yīng)器使用的驅(qū)動(dòng)芯片為XPT2046,其包含了采樣/保持、模數(shù)轉(zhuǎn)換、串口數(shù)據(jù)輸出等功能。同時(shí)芯片集成有一個(gè)2.5V的內(nèi)部參考電壓源、溫度檢測(cè)電路,工作時(shí)使用外部時(shí)鐘。XPT2046可以單電源供電,電源電壓范圍為2.7V~5.5V。參考電壓值直接決定ADC的輸入范圍,參考電壓可以使用內(nèi)部參考電壓,也可以從外部直接輸入1V~VCC范圍內(nèi)的參考電壓(要求外部參考電壓源輸出阻抗低)。X、Y、Z、VBAT、Temp和AUX模擬信號(hào)經(jīng)過(guò)片內(nèi)的控制寄存器選擇后進(jìn)入ADC,ADC可以配置為單端或差分模式。選擇VBAT、Temp和AUX時(shí)可以配置為單端模式;作為觸摸屏應(yīng)用時(shí),可以配置為差分模式,這可有效消除由于驅(qū)動(dòng)開(kāi)關(guān)的寄生電阻及外部的干擾帶來(lái)的測(cè)量誤差,提高轉(zhuǎn)換準(zhǔn)確度。圖3. XPT2046原理框圖b65b6262-b65f-11ee-aa22-92fbcf53809c.png

LCD顯示器

LCD顯示器為一塊240*320的RGB屏幕,使用驅(qū)動(dòng)芯片為ILI9341。ILI9341能夠支持并行和串行數(shù)據(jù)總線,此案例中我們使用串行總線接口(SPI)來(lái)進(jìn)行數(shù)據(jù)傳輸。ILI9341驅(qū)動(dòng)器能夠通過(guò)窗口地址函數(shù)在內(nèi)部GRAM中指定動(dòng)態(tài)圖像的區(qū)域,并且可選擇地更新此窗口區(qū)域,這樣就可以在獨(dú)立于靜態(tài)圖像區(qū)域的同時(shí)顯示動(dòng)態(tài)圖像。ILI9341支持全彩色,8色顯示模式和休眠模式,能夠通過(guò)軟件進(jìn)行精確的電源控制,使得ILI9341能夠作為手機(jī)、MP3和PMP等便攜設(shè)備理想的液晶驅(qū)動(dòng)器。

觸摸屏工作原理

下面將對(duì)XPT2046驅(qū)動(dòng)芯片的工作原理進(jìn)行介紹。

模擬輸入

下圖描述了XPT2046片內(nèi)多路選擇器、ADC的模擬差分輸入和差分參考電壓基準(zhǔn)。圖4. 模擬輸入簡(jiǎn)圖b66c7cd2-b65f-11ee-aa22-92fbcf53809c.png

內(nèi)部參考電壓

XPT2046的內(nèi)部2.5V參考電壓源可通過(guò)控制位PD1進(jìn)行關(guān)閉或者打開(kāi)。一般地,內(nèi)部參考電壓只用于單端模式下Vbatt、Temp和AUX輸入測(cè)量。使用差分模式,觸摸屏可以獲得最佳性能。如果要與ADS7843兼容,XPT2046的內(nèi)部參考電壓源必須強(qiáng)行關(guān)閉。因此,上電后要對(duì)控制位PD1置0以確保關(guān)閉內(nèi)部參考源。圖5. 內(nèi)部電壓源示意圖b6822b54-b65f-11ee-aa22-92fbcf53809c.png

外部參考電壓輸入

+REF和-REF(見(jiàn)圖3)之間的電壓差(下文用VREF表示)決定了模擬輸入的電壓范圍。XPT2046的參考電壓輸入范圍為1V~VCC。參考電壓越低,則ADC輸出的二進(jìn)制數(shù)據(jù)結(jié)果每一個(gè)數(shù)字位所代表的模擬電壓也越低。在12位工作方式下,數(shù)據(jù)結(jié)果的最低位所代表的模擬電壓為VREF/4096,其余位依此類(lèi)推。因此,參考電壓越低,干擾引入的誤差會(huì)越大,此時(shí)要求盡可能使用低噪聲、低波動(dòng)的參考電壓源;在設(shè)計(jì)電路板時(shí),盡可能減少干擾,輸入的信號(hào)噪音也不能太高,否則會(huì)直接影響轉(zhuǎn)換精度。

差分工作模式

如前所述,當(dāng)觸摸感應(yīng)器XPT2046作為觸摸屏應(yīng)用時(shí),可以配置為差分模式。差分模式的優(yōu)點(diǎn)是:+REF和-REF的輸入分別直接接到Y(jié)P、YN上,可消除由于驅(qū)動(dòng)開(kāi)關(guān)的導(dǎo)通電阻引入的坐標(biāo)測(cè)量誤差。缺點(diǎn)是:無(wú)論是采樣還是轉(zhuǎn)換過(guò)程中,驅(qū)動(dòng)開(kāi)關(guān)都需要接通,相對(duì)單端模式而言,功耗會(huì)有增加。當(dāng)SER/DFR置為低電平時(shí),XPT2046為差分工作模式,如下圖所示。圖6. 差分參考源工作模式簡(jiǎn)圖b6926cc6-b65f-11ee-aa22-92fbcf53809c.png

軟件流程

接下來(lái)將簡(jiǎn)單介紹本案例的觸摸屏驅(qū)動(dòng)軟件代碼流程。首先上電之后需要對(duì)所用到的外設(shè)進(jìn)行初始化,包括CRM、GPIO、SPI和DMA等外設(shè)。外設(shè)初始化完成后即可開(kāi)始進(jìn)行觸摸校準(zhǔn),通過(guò)調(diào)用touch_adjust()函數(shù)完成。校準(zhǔn)完成后會(huì)在屏幕顯示一系列的校準(zhǔn)參數(shù),用于后續(xù)計(jì)算觸摸坐標(biāo)使用。隨后,即可開(kāi)始進(jìn)行觸摸測(cè)試,測(cè)試過(guò)程中會(huì)在屏幕畫(huà)出已觸摸的坐標(biāo)點(diǎn),以及坐標(biāo)值。還設(shè)置了清屏按鈕,點(diǎn)擊即可清除屏幕已顯示內(nèi)容和坐標(biāo)值。為了提高數(shù)據(jù)傳輸效率,此demo中清屏和畫(huà)點(diǎn)數(shù)據(jù)通過(guò)DMA-SPI進(jìn)行傳輸,軟件流程圖如下:圖7. 軟件流程圖b6a0bb28-b65f-11ee-aa22-92fbcf53809c.png注:由于觸摸校準(zhǔn)對(duì)觸摸功能來(lái)說(shuō)是必須完成的,如果未完成校準(zhǔn)則無(wú)法進(jìn)行后續(xù)的工作。

觸摸屏快速使用方法

硬件資源

1) AT32-Video-EV2) 2.4寸TFT_LCD3) AT-START-F403A V1.2實(shí)驗(yàn)板圖8. 觸摸屏硬件資源圖b6ad0784-b65f-11ee-aa22-92fbcf53809c.pngNote:1.該demo是基于AT32F403A的硬件條件,若使用者需要在AT32其他型號(hào)上使用,請(qǐng)修改相應(yīng)配置即可。2.供電部分:使用電源供電,或USB線供電(勿使用Link單獨(dú)供電)。

軟件資源

AN0154_LCD_Touch_Sourcecode,觸摸屏案例測(cè)試代碼,工程路徑位于:Sourcecode\utilities\mdk_v5

關(guān)鍵代碼

1) 觸摸點(diǎn)坐標(biāo)獲取函數(shù),用于獲取觸摸坐標(biāo)值,關(guān)鍵代碼如下:b6ce2e3c-b65f-11ee-aa22-92fbcf53809c.png2) 觸摸校準(zhǔn)函數(shù),用于獲取校準(zhǔn)參數(shù),關(guān)鍵代碼如下:b6e735da-b65f-11ee-aa22-92fbcf53809c.png3) 觸摸屏測(cè)試函數(shù),用于測(cè)試觸摸屏,關(guān)鍵代碼如下:b704fb2e-b65f-11ee-aa22-92fbcf53809c.png4) LCD清屏函數(shù),用于清除顯示內(nèi)容,關(guān)鍵代碼如下:b7181ea2-b65f-11ee-aa22-92fbcf53809c.png5) LCD畫(huà)點(diǎn)函數(shù),用于顯示觸摸坐標(biāo)點(diǎn),關(guān)鍵代碼如下:b723f966-b65f-11ee-aa22-92fbcf53809c.png

LCD Touch demo 使用

LCD Touch demo使用步驟如下:1) 編譯下載觸摸屏案例測(cè)試代碼。2) 觸摸屏進(jìn)入校準(zhǔn)界面,依次點(diǎn)擊四個(gè)校準(zhǔn)坐標(biāo)點(diǎn),如下圖8。3) 校準(zhǔn)完成后LCD會(huì)顯示校準(zhǔn)信息,包含四個(gè)校準(zhǔn)參數(shù)VX、VY、CHX和CHY,如下圖9。4) 點(diǎn)擊屏幕任意處,將會(huì)跳轉(zhuǎn)到觸摸屏測(cè)試界面,此時(shí)觸摸屏?xí)⒂|摸點(diǎn)繪制在LCD上,還會(huì)實(shí)時(shí)顯示觸摸點(diǎn)的坐標(biāo),點(diǎn)擊Clear按鈕將清除界面,如下圖10。圖9. 觸摸屏校準(zhǔn)界面b732a54c-b65f-11ee-aa22-92fbcf53809c.png圖10. 觸摸屏校準(zhǔn)信息b7460628-b65f-11ee-aa22-92fbcf53809c.png圖11. 觸摸屏測(cè)試界面b75ab12c-b65f-11ee-aa22-92fbcf53809c.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17162

    瀏覽量

    351349
  • 觸摸屏
    +關(guān)注

    關(guān)注

    42

    文章

    2307

    瀏覽量

    116247
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1707

    瀏覽量

    91644
  • 雅特力
    +關(guān)注

    關(guān)注

    0

    文章

    158

    瀏覽量

    8042
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    發(fā)布高性能電機(jī)控制專(zhuān)用MCU

    近日,科技正式推出了其首款高性能電機(jī)控制專(zhuān)用MCU——AT32M412/M416。這款MCU專(zhuān)為出行工具、家電及工業(yè)控制等應(yīng)用而設(shè)計(jì),
    的頭像 發(fā)表于 11-01 18:11 ?912次閱讀

    開(kāi)發(fā)觸摸屏驅(qū)動(dòng)板需要考慮哪些因素

    驅(qū)動(dòng)板是現(xiàn)代電子設(shè)備中不可或缺的部分,它負(fù)責(zé)將用戶的觸摸操作轉(zhuǎn)化為設(shè)備可以理解的信號(hào)。觸摸屏驅(qū)動(dòng)
    的頭像 發(fā)表于 10-29 14:05 ?460次閱讀

    TSC2101觸摸屏、電池和音頻WinCE驅(qū)動(dòng)程序

    電子發(fā)燒友網(wǎng)站提供《TSC2101觸摸屏、電池和音頻WinCE驅(qū)動(dòng)程序.pdf》資料免費(fèi)下載
    發(fā)表于 10-23 10:13 ?0次下載
    TSC2101<b class='flag-5'>觸摸屏</b>、電池和音頻WinCE<b class='flag-5'>驅(qū)動(dòng)程序</b>

    觸摸屏驅(qū)動(dòng)板無(wú)法燒寫(xiě)程序的相關(guān)原因

    每次聽(tīng)到別人說(shuō)是什么原因?qū)е?b class='flag-5'>觸摸屏驅(qū)動(dòng)板無(wú)法燒寫(xiě)程序,就很想去討論下。今天就跟大家聊聊到底是什么原因?qū)е碌摹?/div>
    的頭像 發(fā)表于 10-21 11:19 ?253次閱讀

    AT32講堂088 | AT32F402/F405時(shí)鐘配置

    介紹如何結(jié)合提供的V2.x.x的板級(jí)支持包(BSP)來(lái)配置時(shí)鐘。以下介紹時(shí)鐘配置的方法主要分兩種:1、以手動(dòng)編寫(xiě)代碼調(diào)用BSP中提供的驅(qū)動(dòng)
    的頭像 發(fā)表于 09-15 08:08 ?508次閱讀
    <b class='flag-5'>AT32</b>講堂088 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F402/F405時(shí)鐘配置

    聚徽-工業(yè)體機(jī)觸摸屏怎么校準(zhǔn)

    工業(yè)體機(jī)觸摸屏的校準(zhǔn)過(guò)程對(duì)于確保觸摸屏的準(zhǔn)確度和精密度至關(guān)重要。以下是一般的校準(zhǔn)步驟,但請(qǐng)注意,具體的校準(zhǔn)過(guò)程可能會(huì)因觸摸屏型號(hào)和制造商的
    的頭像 發(fā)表于 09-06 09:40 ?440次閱讀

    AT32 MCU的隨機(jī)數(shù)生成

    應(yīng)用的需求。底下提供兩種方法:提高亂度的方法,使用ADC的誤差。AT32的微控制器內(nèi)置最多三個(gè)高級(jí)12位片上SAR模擬數(shù)字轉(zhuǎn)換器(ADC)并提供自校準(zhǔn)功能,保證1
    的頭像 發(fā)表于 08-30 12:26 ?591次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>的隨機(jī)數(shù)生成

    AT32講堂085 | AT32 MCU HICK時(shí)鐘校準(zhǔn)

    簡(jiǎn)介AT32系列MCU內(nèi)部都有提供適合運(yùn)行的內(nèi)部高速時(shí)鐘(HICK),其本質(zhì)就是內(nèi)置于芯片的RC振蕩器。在25℃下,其典型值頻率8MHz的精度由工廠校準(zhǔn)到±1%,在-40到105℃,該內(nèi)部高速時(shí)鐘
    的頭像 發(fā)表于 08-30 12:26 ?643次閱讀
    <b class='flag-5'>AT32</b>講堂085 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b> HICK時(shí)鐘校準(zhǔn)

    觸摸屏和plc的程序怎么編寫(xiě)

    編寫(xiě)觸摸屏和PLC程序個(gè)復(fù)雜的過(guò)程,涉及到多個(gè)方面的知識(shí)。 、觸摸屏和PLC概述 觸摸屏
    的頭像 發(fā)表于 07-01 14:46 ?2526次閱讀

    AT32 MCU通過(guò)IEC 60730功能安全認(rèn)證,為家電產(chǎn)品提供安全保障

    ??近日,AT32MCU安全庫(kù)順利通過(guò)IEC60730功能安全認(rèn)證,為家電產(chǎn)品提供安全質(zhì)量保證。國(guó)際公認(rèn)的測(cè)試、檢驗(yàn)和認(rèn)證機(jī)構(gòu)SGS為
    的頭像 發(fā)表于 05-20 08:15 ?571次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>通過(guò)IEC 60730功能安全認(rèn)證,為家電產(chǎn)品提供安全保障

    AT32F423入門(mén)使用指南

    初步環(huán)境準(zhǔn)備開(kāi)發(fā)環(huán)境下載地址:
    的頭像 發(fā)表于 05-14 08:15 ?1580次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F423入門(mén)使用指南

    AT32 MCU與SEGGER攜手合作,開(kāi)發(fā)量產(chǎn)事半功倍

    近日,與SEGGER共同宣布J-Link仿真調(diào)試器與Flasher在線燒錄器全面支持AT32 MCU產(chǎn)品,SEGGER工具鏈的加持使
    的頭像 發(fā)表于 02-23 10:27 ?426次閱讀

    AT32 MCU與SEGGER攜手合作,開(kāi)發(fā)量產(chǎn)事半功倍

    近日,與SEGGER共同宣布J-Link仿真調(diào)試器與Flasher在線燒錄器全面支持AT32MCU產(chǎn)品,SEGGER工具鏈的加持使AT32MC
    的頭像 發(fā)表于 02-22 08:13 ?491次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>與SEGGER攜手合作,開(kāi)發(fā)量產(chǎn)事半功倍

    手機(jī)觸摸屏失靈的原因及解決方法 手機(jī)觸摸屏失靈怎么關(guān)機(jī)

    手機(jī)觸摸屏失靈的原因及解決方法、原因: 軟件問(wèn)題:當(dāng)手機(jī)運(yùn)行過(guò)程中出現(xiàn)些錯(cuò)誤或者存儲(chǔ)空間不足時(shí),可能會(huì)導(dǎo)致觸摸屏失靈。此時(shí),重啟或者
    的頭像 發(fā)表于 01-24 17:48 ?2.1w次閱讀

    電容觸摸屏原理 電容觸摸屏和電阻觸摸屏有什么區(qū)別

    電容觸摸屏和電阻觸摸屏是兩種常見(jiàn)的觸摸屏技術(shù),它們?cè)谠?、結(jié)構(gòu)和應(yīng)用方面都有很大的區(qū)別。下面將詳細(xì)介紹電容觸摸屏的原理、結(jié)構(gòu)和特點(diǎn),并與電阻觸摸屏
    的頭像 發(fā)表于 01-22 16:13 ?4694次閱讀