国产福利在线高清导航大全-国产福利在线-国产福利影视-国产福利一区二区麻豆-成熟少妇大片免费看-成熟女人毛片WWW免费版在线

當前位置:首頁 > 觸控技術 > 多點觸摸技術
多點觸摸技術

彩色液晶接口電路設計及觸摸屏的編程與調試

  引言
     觸摸屏是目前最簡單、方便、自然的而且又適用于中國多媒體信息查詢國情的輸入設備, 它具有堅固耐用、反應速度快、節省空間、易于交流等許多優點。觸摸屏技術被認為是未來人機交互科技的主流方向之一,相關的產業及其產品的應用也正在成為一個熱點。
     本設計題目來自于廣西區自然科學基金項目, 是基金項目中的一個研究子模塊, 本文作者在畢業設計期間針對NL 6448AC33218 彩色液晶顯示屏及其觸摸屏, 應用C8051F020 單片機控制芯片, 采用單片機C 語言編制程序并進行調試, 并且程序采用模塊化設計。
     一、系統構成
     本設計是基于單片機C8051F020 微處理器控制的彩色液晶及觸摸屏的控制系統, 系統結構框圖如圖1所示:


圖1 系統結構框圖

     二、系統連接方式及工作過程
     (一)C8051F020 控制TFT6448b 的工作過程
     在用C8051F020 實現對TFT 6448b 的控制過程中, 采用總線方式進行控制。因為TFT 6448b 液晶控制器自帶有鎖存功能, 所以在使用總線方式進行控制時并不需要外加鎖存芯片, 只須使用單片機C8051F020 的P0、P2、P3 口就可以實現。在系統加電之前, 由于C8051F020 的典型工作電壓為313V , TFT 6448b 的工作電壓是5V , 對P0、P2、P3 口相應連接管腳進行驅動能力擴展; 根據控制需求, 通過P0、P2、P3 端口寄存器, 將相應端口的引腳配置成漏極輸出方式。將P3 口配置成為數據?地址輸出口, 輸出地址時, 其為地址總線的低八位, P2 口提供高位地址; 傳輸數據時, 其為8 位數據總線口。系統加電后, 使得TFT 6448b 的片選信號?C S 有效, 通過往TFT 6448b 的相應行、列、控制、數據寄存器中寫入數據, 即可用C8051F020 芯片實現對TFT 6448b的控制, 從而實現彩色液晶的顯示控制。
     (二) 觸摸屏硬件接口電路及工作原理

 

圖2 觸摸屏硬件接口電路

     根據四線電阻式觸摸屏的工作原理, 結合圖2 中觸摸屏硬件接口電路。
     該觸摸屏硬件接口電路的具體工作過程如下: 1、如圖2 所示電路, 連接好線路, 給電源輸入端、參考基準電壓端接入313V 的直流電源; 2、結合軟件編程對AD0 進行初始化, 系統處于休眠狀態時, 軟件開中斷, 截止PN P1、PN P2、N PN 1, 飽和導通N PN 2; 3、等待觸摸屏被觸摸; 4、若觸摸屏上發生觸摸, 進入中斷服務程序, 關掉外部中斷, 進行短暫延時以消除外界抖動。通過判斷中斷輸入口P010 的電平變化, 確定抖動是否結束。通過軟件截止PN P2、N PN 2, 飽和導通PN P1、N PN 1, 選擇模數轉換通道A IN 010, 采集觸摸點的X 方向坐標值,延時等待轉換結束, 移出轉換結果; 電極電壓切換, 通過軟件置位, 截止PN P1、N PN 1, 飽和導通PN P2、N PN 2, 選擇模數轉換通道A IN 011, 采集觸摸點的Y 方向坐標值, 延時等待轉換結束, 移出轉換結果; 5、通過將采集到的X 和Y 坐標值與設定的按鍵邊界值進行比較, 若比較結果為真, 則切換到相應的子頁面, 否則, 重新開中斷, 并返回主程序; 6、觸摸屏硬件接口電路工作過程重新回到步驟3, 繼續等待下一次觸摸。

       三、彩色液晶顯示及觸摸屏軟件設計
     (一) 顯示原理
     如要在點陣液晶顯示器上顯示漢字, 首先從漢字點陣生成工具中提取要顯示的漢字的點陣字模。因為每個漢字在字庫中是以點陣字模形式存儲的, 所以在程序當中建立字庫, 以便調用。程序監測, 是"1"就顯示, 是"0"就不顯示。檢測某位是否為"1"的方法兩種: 一種是移位法。每次向左移動一位, 然后判斷進位的值, 若為"1", 說明要顯示, 則向寫數據寄存器DA T 送該字要顯示的顏色代碼; 若為"0", 說明不用顯示, 跳過; 另一種是位與法。先與80H 位與, 判斷該字節的最高位是否為"1", 若是, 說明要顯示; 若不是, 跳過; 再依次與40H、20H、10H、08H、04H、02H、01H 位與, 判斷相應位是否為"1".如要顯示字符、數字和圖形等, 其方法和原理與顯示漢字一樣。
     (二) 程序設計
     1、顯示程序程序設計。
     其程序流程圖如圖3 所示:


圖3 顯示子程序流程圖

     2、觸摸屏軟件設計。
     結合圖2 所示觸摸屏硬件接口電路, 為實現對觸摸屏上觸摸點的識別, 實現頁面切換功能。本設計中觸摸屏模塊軟件設計思想是: 對P0 端口的P010 引腳、P1 端口的P114~ P117 引腳, 通過相應的端口輸出方式寄存器, 配置為推挽輸出方式; 對模數轉換器ADC0 的相關寄存器進行設置, 將模擬輸入通道配置為單端輸入方式, 通過通道選擇寄存器分時選通采集數據的模數轉換通道。進入主程序, 等待外部觸摸中斷發生。若外界產生觸摸, 進入中斷服務程序, 關掉外部中斷, 可以避免多個觸摸點發生沖突。通過判斷中斷輸入口電平的變化消除非意圖觸摸產生的抖動; 消除抖動后。通過電壓切換, 分別導通X 電極對、Y 電極對, 分別采集X 方向、Y 方向的模擬輸入量并移出轉換結果, 將采集到的值與事先設定的按鍵邊界值進行比較, 若在按鍵范圍內, 則切換到相應頁面, 否則開中斷并返回主程序, 繼續等待外部觸摸中斷發生。相應軟件設計流程圖如圖4所示。


圖4 軟件設計流程圖

       3、觸點判斷程序設計。
     在本設計當中彩色液晶顯示屏的坐標分布情況分布如下: 屏的最左上角(0, 0) , 屏的最左下腳(0, 479) ,屏的最右上角(639, 0) , 屏的最右下角(639, 479)。通過往彩色液晶顯示控制芯片TFT 6448b 的列、行、控制、數據寄存器中送入相應的值, 即可以在液晶屏上任何地方實現顯示。根據顯示頁面設計要求, 將需要顯示的按鍵用文字、字符或者圖形標識事先在液晶顯示屏上顯示出來。譬如其中頁面中有兩個按鍵標識, 即"返回"和"下一頁".這兩個標識在液晶顯示屏的位置是這樣的, 如上圖5 所示。


圖5 液晶顯示屏的兩個按鍵標

 

     根據ADC0 模塊采集到的X 和Y 坐標值, 通過按照從左到右、從上到下的逐點測量的方法, 得出觸摸屏各觸點電壓梯度經過轉換后的數值是按照線性分布的。因為將得到12 位十六進制數值右移了3 位, 那么對應的十進制數的最大值為511, 最小值為0, 其精度為1/512.觸摸屏上的坐標的具體分布如圖6 所示。


 

圖6 觸摸屏上的坐標分布

 

     依照圖6 所示, 可以知道其坐標分布的幾個特殊點坐標值(列, 行) , 譬如: 觸摸屏的最左上角(511, 511) ,屏的最左下腳(0, 511) , 屏的最右上角(511, 0) , 屏的最右下角(0, 0) ; 在此基礎上, 通過將觸摸屏固定在液晶顯示屏上, 即可以測量觸摸屏對應顯示屏上固定按鍵標識的按鍵區域邊界值。具體軟件流程圖如圖7 所示: 下面通過闡述一個按鍵標識來說明, 如圖5 的"返回"按鍵標識。

 


 

圖7 軟件流程圖

 

     1、對觸摸屏坐標進行采集標定, 得到的按鍵邊界值,X 坐標為51< kk & kk< 94, Y 坐標的邊界值為452<mm &mm < 507;2、當觸摸發生, 將采集到的X 坐標和Y 坐標與該按鍵標識的邊界值進行比較, 如果在該按鍵邊界值之間說明按鍵正確, 否則不正確;3、如按鍵正確, 進行頁面切換, 調用頁面顯示子模塊程序, 顯示相應的子頁面;4、如采集的X 和Y 坐標不正確, 但坐標值屬于其它按鍵坐標值的范圍, 則調用相對應的按鍵的顯示子模塊程序; 如不屬于其它按鍵范圍, 則返回等待。如上所述, 所有頁面的按鍵的識別和顯示方法都是一致的, 唯一的區別就是坐標值的不同。
     四、調試
     本設計中, 在觸摸屏硬件接口電路設計及軟件編程中, 涉及到軟件程序調試。調試過程中, 采用功能模塊化的方法: 譬如在實現整個彩色液晶及觸摸屏控制的過程中, 簡要的軟、硬件調試步驟如下: 硬件--實現C8051F020 與TFT 6448b2LCD 控制板的連接-> 實現單片機C8051F020 與觸摸屏之間的連接-> 將兩個模塊連接在一起, 構成一個整體的控制系統; 軟件--先是實現單色屏的顯示-> 在此基礎上實現不同顏色和型號的字?字符的顯示-> 緊接著插入占用存儲空間較小的圖片(如C8051F020 芯片外形圖) -> 考慮任意點觸摸的實現-> 考慮定點觸摸的采集并實現按鍵區域觸摸-> 考慮切換子頁面功能的實現-> 實現比較人性化彩色頁面顯示。
 


相關文章
精彩評論:
0  相關評論
主站蜘蛛池模板: 玉环县| 枞阳县| 射洪县| 兴隆县| 蓝田县| 东至县| 赤壁市| 德化县| 龙泉市| 固安县| 泽州县| 理塘县| 扬中市| 合阳县| 万源市| 尉氏县| 晋城| 鹿邑县| 林西县| 封丘县| 平乐县| 武强县| 宿松县| 鱼台县| 甘谷县| 虹口区| 高雄市| 西宁市| 新闻| 简阳市| 黄石市| 托克托县| 来安县| 义乌市| 合山市| 太谷县| 北京市| 金坛市| 中牟县| 洛浦县| 同江市|