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

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

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

探究PIC32MX的液晶觸摸屏人機(jī)界面設(shè)計(jì)

電子工程師 ? 來源:單片機(jī)與嵌入式系統(tǒng)應(yīng)用 ? 作者:劉宇洋;高尚勇 ? 2021-05-08 17:57 ? 次閱讀

引 言

PIC32MX是Microchip公司推出的新型32位高性能系列單片機(jī)。采用改進(jìn)的哈佛架構(gòu)、C編譯器優(yōu)化的指令集、流水線取指令方式,具有實(shí)用、指令集小、體積小、功耗低、速度高、功能強(qiáng)、抗干擾能力強(qiáng)等特點(diǎn)。除了本文主要介紹的8位/16位并行控制接口模塊和10/12位的A/D轉(zhuǎn)換器(500 Ksps)外,還提供了CAN、UART、SPI、I2C等豐富的外圍接口,可以方便地與其他設(shè)備進(jìn)行通信。彩色液晶觸摸屏不僅可以顯示字符、數(shù)字、圖形、曲線及漢字,還具有觸摸功能,用途十分廣泛。

工業(yè)上用32位單片機(jī)PIC32MX460F512L來控制帶觸摸屏的液晶顯示器是一種理想的方案。本文使用PIC32MX460F512L的并行接口模塊,按照8080時(shí)序驅(qū)動所羅門公司的SSD1926芯片,實(shí)現(xiàn)了5.7 in TFT彩色液晶觸模屏的觸摸和顯示功能。該方案在噴水織機(jī)控制應(yīng)用中,已經(jīng)整體實(shí)現(xiàn)了數(shù)據(jù)輸入/輸出、數(shù)據(jù)存儲、數(shù)據(jù)處理及傳輸?shù)纫幌盗?a target="_blank">上位機(jī)功能,而且用戶界面友好。

1 PIC32MX與SSD1926的接口電路

SSD1926是一款中小規(guī)模的顯示控制芯片。采用128引腳LQFP封裝,256 KB靜態(tài)存儲空間和2D圖像引擎,可以支持單色和彩色LCD;32位內(nèi)部數(shù)據(jù)通道,可以提供高帶寬的顯示內(nèi)存,以實(shí)現(xiàn)快速的屏幕刷新;擁有MMC/SD接口,可以與SD卡等外部存儲器件方便地進(jìn)行數(shù)據(jù)交換;采用單電源供電和單時(shí)鐘輸入,具有很短的CPU訪問延遲時(shí)間,可以支持無READY/WAIT信號微處理器。

這些特點(diǎn)能夠極大地簡化外圍電路的設(shè)計(jì)。同時(shí),SSD1926還具有強(qiáng)大的總線兼容性,可與多種類型的MCU連接,除了支持SRAM接口與ARM系列連接、ISA接口與NEC系列連接外,還支持8/16位8080時(shí)序間接尋址方式,能夠方便地與各種具有并口的MCU連接。本文使用:PIC32MX460F512L的8位/16位并行控制接口模塊與SSD1926接口。硬件接口框圖如圖1所示。

fec959a4-511e-4e51-afbd-95c98d58d314.jpg

CS為片選信號,RS為地址與數(shù)據(jù)選擇信號,RESET為復(fù)位信號,都可以由通用I/O口進(jìn)行控制,分別用RC1、RC2和RC3與其連接。數(shù)據(jù)總線DB[15:0]與并行控制接口模塊中的PMD[15:0]引腳分別對接。WR和RD為讀寫信號,由并行控制接口模塊中的PMWR和PMRD引腳分別控制。SSD1926對接收到的數(shù)據(jù)進(jìn)行處理之后,再通過與LCD的接口驅(qū)動TFT彩色液晶屏進(jìn)行顯示。

2 觸摸功能的軟硬件設(shè)計(jì)

電阻式觸摸屏處于與外界完全隔離的工作環(huán)境,不怕灰塵和水汽,可以用任何物體來觸摸,可以寫字畫圖,廣泛應(yīng)用于工業(yè)控制領(lǐng)域中。觸摸屏工作時(shí),上下導(dǎo)體層可以看作電阻網(wǎng)絡(luò)。當(dāng)某一層電極加上電壓時(shí),會在該電阻網(wǎng)絡(luò)上形成電壓梯度。若外力使得上下兩層電極在某一點(diǎn)相接觸,則在電極未施加電壓的另一層可以檢測出接觸點(diǎn)的電壓,從而換算出接觸點(diǎn)的坐標(biāo)值。本文選用4線電阻式觸摸屏,其電阻網(wǎng)絡(luò)工作原理如圖2所示。

79f6cffe-cef5-46d6-b4f4-34e637232d0c.jpg

系統(tǒng)工作時(shí),首先把AN11/RB11、AN4/RB4復(fù)用引腳設(shè)置為I/O引腳。RB11輸出高電平(+3.3 V),RB4引腳輸出低電平(0 V),在頂層的電極X+、X-上即產(chǎn)生了3.3 V的電壓。當(dāng)有外力使得上下兩層在某一點(diǎn)接觸時(shí),在底層Y+、Y-引腳上就會輸出接觸點(diǎn)處的電壓。此時(shí),AN10/RB10、AN5/RB5設(shè)置為A/D輸入通道。采樣此引腳上的電壓信號,即可得到Y(jié)+、Y-引腳上的電壓值,根據(jù)下式可以計(jì)算出X坐標(biāo):

觸點(diǎn)X坐標(biāo)=X軸分辨率×X相電壓采樣值/1 024

本文為10位精度A/D采樣,3.3 V輸入時(shí)對應(yīng)的采樣值即為1 024。然后,改變4個(gè)引腳的輸出定義,將A/D輸入引腳RB10設(shè)置為I/O引腳輸出高電平,RB5設(shè)置為I/O引腳輸出低電平,將3.3 V電壓切換到底層電極Y+、Y-上,設(shè)置AN11和AN4為A/D輸入引腳。對X+、X-引腳進(jìn)行A/D采樣,測量得到接觸點(diǎn)處的Y相電壓,根據(jù)下式可以計(jì)算出Y坐標(biāo):

觸點(diǎn)Y坐標(biāo)=y軸分辨率×y相電壓采樣值/1 024

在工業(yè)應(yīng)用中,由于A/D采樣信號為模擬量輸入,很容易受到現(xiàn)場環(huán)境的電磁干擾。除了在硬件上設(shè)計(jì)濾波電路等抗干擾措施外,還需要在軟件中設(shè)計(jì)抗干擾算法,具體軟件流程如圖3所示。通過采樣兩次輸入進(jìn)行比較的方法,能夠有效地減少由A/D采樣模擬信號源帶來的干擾。根據(jù)采樣得到的X、Y坐標(biāo)值,能夠準(zhǔn)確地知道觸摸屏上接觸點(diǎn)的位置,再根據(jù)X、Y坐標(biāo)的歷史值,還能夠分析出接觸點(diǎn)的狀態(tài)是接觸、移動,還是放開等狀態(tài)。

33dff295-410c-499e-8e56-b446db5d4273.jpg

3 顯示觸摸功能的綜合實(shí)現(xiàn)

PIC32MX系列的并行控制接口模塊功能非常強(qiáng)大,只需要對其寄存器進(jìn)行正確的初始化配置,即可自動適應(yīng)各種并行接口的時(shí)序要求。當(dāng)需要進(jìn)行讀寫指令切換時(shí),只需要改變讀寫狀態(tài)寄存器的值,芯片就會根據(jù)初始化配置時(shí)設(shè)置的值自動產(chǎn)生時(shí)序電平。在進(jìn)行寫操作時(shí),芯片也會根據(jù)設(shè)置的值,自動使數(shù)據(jù)信號達(dá)到所要求的建立電平和保持電平的時(shí)間。SSD1926相對應(yīng)的寄存器配置如下:

51076a00-53dc-475a-aa9f-e10f5a2a788f.jpg

并行接口數(shù)據(jù)傳輸時(shí)序如圖4所示。

3ae032ad-884d-42f7-8c35-bd9ec9694c2b.jpg

圖4中,CS信號為片選信號,對SSD1926進(jìn)行操作時(shí)在整個(gè)操作周期中保持高電平。RS信號為地址與數(shù)據(jù)選擇信號,寫地址時(shí)保持低電平,寫數(shù)據(jù)時(shí)保持高電平。PMWR為寫操作使能信號。當(dāng)寫操作開始時(shí),首先等待1個(gè)外部時(shí)鐘周期(B),確保PMD[15:0]上的數(shù)據(jù)或地址信號已穩(wěn)定建立;然后保持3個(gè)外部時(shí)鐘周期的高電平(M),確保信號內(nèi)容完全寫入SSD1926;最后用1個(gè)外部時(shí)鐘周期(E)結(jié)束寫操作。BUSY信號為PMMODEbits.BUSY寄存器的狀態(tài)。進(jìn)行讀寫操作時(shí),BUSY信號自動置高;只有讀到BUSY信號為低時(shí)(表示上一次操作已完成,總線空閑),程序才能開始下一次讀寫操作。把對應(yīng)I/O口和寄存器的操作編程集成起來,編寫為子程序,可方便地在主程序中實(shí)現(xiàn)PIC32MX系列單片機(jī)與SSD1926之間的數(shù)據(jù)傳輸。人機(jī)界面主程序框圖如圖5所示。

5fddba38-eb66-4658-b516-5bba98904f9c.jpg

當(dāng)A/D采樣得到的接觸點(diǎn)X、Y坐標(biāo)發(fā)生變化時(shí),消息處理函數(shù)根據(jù)得到的消息發(fā)出相應(yīng)的指令。除了進(jìn)行數(shù)據(jù)輸入/輸出和與下位機(jī)通信外,當(dāng)需要進(jìn)行頁面切換時(shí),就更改頁面狀態(tài),調(diào)用“新頁面建立”函數(shù),切換到新的頁面;當(dāng)需要進(jìn)行頁面內(nèi)容更新時(shí),就調(diào)用“頁面更新”函數(shù),更新當(dāng)前頁面的狀態(tài)。

為了簡化編程,軟件中定義了幾種常用的圖形模塊,如按鍵、靜態(tài)圖片、靜態(tài)文字段、動態(tài)數(shù)據(jù)顯示框等。每個(gè)模塊都具有模塊創(chuàng)建、模塊更新和消息響應(yīng)3個(gè)子程序。模塊創(chuàng)建子程序根據(jù)模塊的上下左右坐標(biāo)、模塊的顏色、模塊的內(nèi)容及狀態(tài)等參數(shù),在液晶顯示器的對應(yīng)位置上顯示出模塊的圖案,并在對應(yīng)的內(nèi)存空間中記錄下模塊的狀態(tài)。

模塊更新子程序定義了模塊不同狀態(tài)下圖案的變化,比如按鍵模塊當(dāng)被觸摸時(shí)即顯示出3D效果的凹陷圖案,未被觸摸時(shí)即顯示3D效果的凸出圖案。消息響應(yīng)子程序則根據(jù)A/D采樣得到的接觸點(diǎn)X、Y坐標(biāo),判斷模塊是處于觸摸過程的接觸、移動還是放開狀態(tài),并對狀態(tài)進(jìn)行響應(yīng)。Microchip公司特別針對PIC32MX系列還開發(fā)了圖形軟件庫(graphics library)。該軟件可以方便地把各種語言、各種字體的文字以及位圖格式的圖片轉(zhuǎn)化為能夠在軟件中直接使用的數(shù)組矩陣,極大地方便了用戶。

4 應(yīng)用情況

該方案已經(jīng)成功應(yīng)用在了某公司自主開發(fā)的噴水織機(jī)上。圖6為該噴水織機(jī)上本系統(tǒng)的實(shí)物圖。

c3ec4b3a-8147-4fa3-8c58-c92a3725f8a2.jpg

噴水織機(jī)是采用噴射水柱牽引緯紗穿越梭口的無梭織機(jī)。為了完成開口、引緯、打緯、卷取、送經(jīng)過程,需要多單元高精度的協(xié)同配合工作。舊式的噴水織機(jī)完全靠機(jī)械齒輪齒條傳動的方式,一旦更換織造品種,就得更換大.量齒輪齒條,改變傳動比;而且由于機(jī)械精度及強(qiáng)度的限制,很難提高織造的速度。

采用CAN總線電氣一體化控制策略的電控噴水織機(jī),能夠利用CAN總線高速傳輸?shù)哪芰σ约敖涣?a target="_blank">電機(jī)伺服系統(tǒng)的高精度,實(shí)現(xiàn)多單元的高度協(xié)同工作,大幅度提高織造速度和質(zhì)量;并且更換織造品種時(shí)只需要進(jìn)行相關(guān)參數(shù)的調(diào)整,無需改變機(jī)械傳動比。

由于電氣單元和交流伺服電機(jī)的引入,需要設(shè)置大量的參數(shù),而且需要及時(shí)、準(zhǔn)確的故障報(bào)警,以監(jiān)測織機(jī)系統(tǒng)狀態(tài)并方便織機(jī)系統(tǒng)的維護(hù)。為此,我們設(shè)計(jì)開發(fā)了人機(jī)界面。它以PIC32MX460F512L芯片和液晶觸摸屏為核心,具有精度高、價(jià)格低、抗干擾能力強(qiáng)、簡化了輸入輸出設(shè)備等優(yōu)點(diǎn)。

系統(tǒng)通過I2C總線與片外EEPROM接口,能夠方便地保存用戶由界面輸入的數(shù)據(jù);通過I2C總線與日歷時(shí)鐘芯片接口,能夠得到準(zhǔn)確的時(shí)間信息;采用CAN通信方式與電機(jī)控制器通信,將設(shè)置的參數(shù)及時(shí)傳輸42給主控制器,并把用戶需要的數(shù)據(jù)實(shí)時(shí)顯示在液晶顯示屏上;具備故障監(jiān)測和自動報(bào)警功能,實(shí)現(xiàn)了電氣智能化控制。系統(tǒng)結(jié)構(gòu)框圖如圖7所示。

1e1e865b-9147-4fbc-99cb-889583745373.jpg

5 結(jié) 論

本文介紹了帶觸摸屏的液晶控制器SSD1926與數(shù)字信號處理器PIC32MX460F512L的接口電路,并行接口時(shí)序的模塊化實(shí)現(xiàn),以及電阻式觸摸屏的觸摸功能。實(shí)踐證明,這種方案具有完善的漢字顯示和圖形顯示功能,占用引腳少,程序模塊化強(qiáng),編寫方便;觸摸功能可以取代應(yīng)用系統(tǒng)中的鍵盤模塊,具有良好的人機(jī)交互功能。該方案已經(jīng)用于噴水織機(jī)中,效果良好。

編輯:jq

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

    關(guān)注

    8

    文章

    458

    瀏覽量

    56976
  • SSD
    SSD
    +關(guān)注

    關(guān)注

    20

    文章

    2791

    瀏覽量

    116658
  • 數(shù)字信號處理器

    關(guān)注

    5

    文章

    428

    瀏覽量

    27282
  • 液晶控制器
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    7542
收藏 人收藏

    評論

    相關(guān)推薦

    什么是開關(guān)柜人機(jī)界面?有何作用?

    在開關(guān)柜中,蜀瑞創(chuàng)新人機(jī)界面通常用于顯示設(shè)備的參數(shù)、狀態(tài)信息以及控制命令的輸入和輸出。它可以是基于計(jì)算機(jī)的軟件界面觸摸屏、按鈕、指示燈等多種形式。
    的頭像 發(fā)表于 08-07 14:05 ?119次閱讀
    什么是開關(guān)柜<b class='flag-5'>人機(jī)界面</b>?有何作用?

    人機(jī)界面觸摸屏編程的基本概念及硬件選擇

    人機(jī)界面(Human-Machine Interface,簡稱HMI)觸摸屏編程是一種廣泛應(yīng)用于工業(yè)自動化、智能家居、醫(yī)療設(shè)備等領(lǐng)域的技術(shù)。本文將詳細(xì)介紹HMI觸摸屏編程的基本概念、硬件選擇、軟件
    的頭像 發(fā)表于 07-01 14:42 ?820次閱讀

    人機(jī)界面觸摸屏如何觸摸校正屏幕

    人機(jī)界面(Human-Machine Interface,簡稱HMI)觸摸屏是一種廣泛應(yīng)用于工業(yè)自動化、智能家居、醫(yī)療設(shè)備等領(lǐng)域的交互設(shè)備。觸摸屏的校正對于確保設(shè)備的正常運(yùn)行和提高用戶體驗(yàn)至關(guān)重要
    的頭像 發(fā)表于 07-01 14:36 ?816次閱讀

    人機(jī)界面觸摸屏點(diǎn)不動怎么回事

    人機(jī)界面(Human-Machine Interface, HMI)觸摸屏點(diǎn)不動的問題可能由多種原因引起。在這篇文章中,我們將詳細(xì)探討這個(gè)問題的各個(gè)方面,包括可能的原因、診斷方法、解決方案以及
    的頭像 發(fā)表于 07-01 14:32 ?702次閱讀

    人機(jī)界面應(yīng)具備的特性是什么

    應(yīng)具備的特性。 一、直觀性 直觀性是人機(jī)界面設(shè)計(jì)的基礎(chǔ),它要求界面能夠讓用戶快速理解其功能和操作方法。以下是實(shí)現(xiàn)直觀性的一些關(guān)鍵點(diǎn): 清晰的布局:界面布局應(yīng)該簡潔明了,功能模塊之間有明顯的區(qū)分,便于用戶快速定位所需功能。 一致性
    的頭像 發(fā)表于 07-01 14:24 ?357次閱讀

    人機(jī)界面觸摸屏有什么區(qū)別

    不可或缺的一部分。與此同時(shí),觸摸屏作為一種常見的輸入設(shè)備,與人機(jī)界面之間存在著密切的關(guān)系。本文將深入探討人機(jī)界面的定義、功能以及它與觸摸屏之間的區(qū)別,并通過詳細(xì)的分析和解釋,為讀者提供
    的頭像 發(fā)表于 06-07 15:24 ?979次閱讀

    家用電器人機(jī)界面電容觸摸膜片~人機(jī)界面組件解決方案 #彩膜面板 #觸控 #人機(jī)界面

    人機(jī)界面
    東莞市雨菲電子科技有限公司
    發(fā)布于 :2024年05月31日 09:29:47

    家用電器人機(jī)界面電容觸摸膜片~人機(jī)界面組件解決方案 #彩膜面板 #觸控 #人機(jī)界面

    人機(jī)界面
    東莞市雨菲電子科技有限公司
    發(fā)布于 :2024年05月28日 09:43:16

    RGB觸摸展示面板~人機(jī)界面組件解決方案 #觸控 #人機(jī)界面 #模組

    人機(jī)界面
    東莞市雨菲電子科技有限公司
    發(fā)布于 :2024年05月09日 09:37:14

    觸控顯示模組和觸摸屏有啥區(qū)別?#模組 #觸控 #人機(jī)界面

    人機(jī)界面模組
    東莞市雨菲電子科技有限公司
    發(fā)布于 :2024年03月18日 13:47:18

    AR-HUD人機(jī)界面設(shè)計(jì)原則要點(diǎn)

    對于車載信息顯示系統(tǒng)的一種,AR-HUD 的人機(jī)界面設(shè)計(jì)首先應(yīng)該考慮的必須是以安全為導(dǎo)向。
    的頭像 發(fā)表于 03-06 14:05 ?610次閱讀

    嵌入式智能家居終端人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《嵌入式智能家居終端人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn).zip》資料免費(fèi)下載
    發(fā)表于 11-17 10:18 ?0次下載
    嵌入式智能家居終端<b class='flag-5'>人機(jī)界面設(shè)計(jì)</b>與實(shí)現(xiàn)

    基于NXP i.MX RT117H智能人機(jī)界面方案

    基于NXP i.MX RT117H智能人機(jī)界面方案
    的頭像 發(fā)表于 10-30 18:22 ?536次閱讀
    基于NXP i.<b class='flag-5'>MX</b> RT117H智能<b class='flag-5'>人機(jī)界面</b>方案

    什么是人機(jī)界面?人機(jī)界面觸摸屏有什么區(qū)別?

    人機(jī)界面與人們常說的“觸摸屏”有什么區(qū)別?從嚴(yán)格意義上來說,兩者是有本質(zhì)上的區(qū)別的。因?yàn)椤?b class='flag-5'>觸摸屏”僅是人機(jī)界面產(chǎn)品中可能用到的硬件部分,是一種替代鼠標(biāo)及鍵盤部分功能,安裝在顯示
    的頭像 發(fā)表于 10-25 08:07 ?1653次閱讀
    什么是<b class='flag-5'>人機(jī)界面</b>?<b class='flag-5'>人機(jī)界面</b>跟<b class='flag-5'>觸摸屏</b>有什么區(qū)別?

    如何可以應(yīng)用TouchGFX進(jìn)行人機(jī)界面設(shè)計(jì)

    產(chǎn)品中會用到人機(jī)界面,有個(gè)電容觸摸屏。 想請教,如何應(yīng)用TouchGFX進(jìn)行界面設(shè)計(jì),完成比較好看的人機(jī)交互界面,是工業(yè)數(shù)據(jù)采集方面的應(yīng)用。
    發(fā)表于 10-24 06:26