唐鑫凌
(湖南科技學院 電子工程系,湖南 永州 425100)
隨著多媒體信息查詢的與日俱增,人們越來越多地談到觸摸屏,因為觸摸屏作為一種最新的電腦輸入設備,它是目前最簡單、方便、自然而又適用于中國多媒體信息查詢的輸入設備。觸摸屏具有堅固耐用、反應速度快、節省空間、易于交流等許多優點。這種技術極大地方便了那些不懂電腦操作的用戶,它賦予多媒體嶄新的面貌,是極富吸引力的全新多媒體交互設備。觸摸屏在我國的應用范圍非常廣闊,主要應用于公共信息的查詢,如電信局、稅務局、銀行、電力等部門的業務查詢;城市街頭的信息查詢;此外還應用于領導辦公、工業控制、軍事指揮、電子游戲、點歌點菜、多媒體教學、房地產預售等。
本設計采用電阻式觸摸屏,通過程控開關4052、4051分別取得觸摸屏X,Y軸端的電壓量,再經過A/D將其轉換為數據,由單片機讀取然后發送給計算機,經過VC編制的一個多進程串行口通訊程序,使單片機發送的數據能被計算機接收并根據相應的比例關系在計算機上顯示出來。該設計的優點是電路簡單,程序控制方便,數據傳送穩定可靠。
典型觸摸屏的工作部分一般由兩層透明的阻性導體層、兩層導體之間的隔離層和電極三部分組成,(如圖1所示)。其阻性導體層選用阻性材料,如銦錫氧化物(ITO)涂在襯底上構成,上層襯底用塑料,下層襯底用玻璃。隔離層為粘性絕緣液體材料,如聚脂薄膜。電極選用導電性能極好的材料(如銀粉墨)構成,其導電性能大約為ITO的1000倍。

圖1 觸摸屏結構與輸入原理圖
圖2為觸摸屏在計算機中應用的總體設計圖,它主要包括觸摸屏輸入、A/D轉換、單片機數據采集與處理、串行接口、計算機顯示五個部分。

圖2 系統整體框圖
此部分主要解決觸摸屏的控制問題。很顯然,觸摸屏的控制必須完成電極電壓的切換,手在觸摸屏上的感應能引起輸出電壓的變化,單片機輸出控制信號控制程控開關4052、4051從而分別采集觸摸屏X,Y軸上的電壓值,通過后面的A/D轉換,從而把數據采集起來。 觸摸屏選用四線電阻式,具體電路如圖1所示。程序只要改變P1.2、P1.3、P1.4端口的電位就可實現觸摸屏電極電壓的切換。
A/D轉換主要是把采集到的電壓量轉換為數據量。此部分主要是由單片機控制其轉換和讀取,為了能在電腦上顯示比較大的圖形,必須選用靈敏度高的A/D芯片,而本設計采用Analog Device公司生產的12位逐次逼近式快速A/D轉換器AD574,其誤差≤0.05% ,片內配有三態輸出緩沖電路,可直接與各種8位或16位微處理器相連,無須附加邏輯接口電路,并能與TTL電平兼容。此芯片內部自帶高精度參考電壓源和時鐘電路,無須外部電路及時鐘信號,使用方便,具體制作的電路原理圖如圖3所示。

圖3 A/D轉換電路原理圖
通常情況下,人們是通過外部設備使用計算機的,但是由于種種原因,外設往住不能與CPU直接相連,它們之間的信息交換需要一個中間環節,這就是接口。串行口是計算機的一種標準接口,它的數據和控制信息是一位接一位串行傳送下去,串行口通訊必須遵照一個協議,稱為RS-232協議。
當單片機發送數據給計算機時,計算機必須要有一個程序來控制串口,并對數據作相應處理,使它能正確的在電腦上顯示出來,本設計用Windows API 編程控制串口,其中包括以下幾個部分:
(1)打開和關閉串口,(2)串口的配制和串口的屬性,(3)讀寫串口,(4)通信事件,(5)設備控制命令
單片機程序所要完成的功能:讀取觸摸屏X軸上的數據、讀取觸摸屏Y軸上的數據、發送數據。程序流程圖如圖4所示。

圖4 單片機程序流程圖
硬件電路單片機晶振為22.1184M,串行通訊波特率為9600bits/s,設置單片機定時器為定時器2,方式2,則定時器T1方式2的初值為:

該觸摸屏顯示界面是基于視圖的應用程序,利用MFC AppWizard[1]建立視圖文檔的應用程序框架,再為其添加其他資源。
3.2.1 創建文檔主程序
(1)打開Visual Studio6.0 有AppWixard建立一個名為TTY的MFC應用程序。在TerminalA 工程的資源視圖中打開ID_MAINFRAME菜單資源。去掉編輯菜單和視圖菜單,
然后添加API示例菜單,在API示例菜單中加入3個菜單項,(2)添加對話框為項目新增 1個對話框IDD-COMMDLG用于串行口設置,添加控件后對話框的設計如圖5所示。

圖5 添加控件后的對話框與顯示界面
3.2.2 顯示窗口
如圖4所示是本設計的顯示結果。該部分主要由VC++來實現對讀取數據的處理過程,微機通過串行接口,從觸摸屏中讀得的數據,用作圖函數DC.MOVTO(X,Y),DC.LINETO(X,Y)[2]在窗口上顯示觸點在觸摸屏上劃過的軌跡。
通過系統軟件與硬件的設計完成了單片機與計算機之間的通信,實現了使用觸摸屏用作電腦的輸入設備。使用多路選擇開關作為觸摸屏電壓極性的切換,分別采集觸摸屏上觸點的X軸與Y軸的電信號,通過A/D轉換電路,將這些信息送至單片機進行處理,然后通過對單片機與計算機串行口的編程完成單片機向計算機之間的信息傳送,從而達到將觸摸屏上的內容在計算機上顯示的目的。本設計原理簡單,實用性強,揭開了時下新興、用途廣泛、技術先進的觸摸屏技術的神秘面紗。
[1]李現勇.Visual C++串行口通信技術與工程實踐[M].人民郵電出版社,2002.
[2]康華光.電子技術基礎〈模擬部分〉[M].北京:高等教育出版社,2001,40-80.
[3]王文中,郭楠,葛慶平.PC 機與單片機串口通信模型的設計與實現[J].首都師范大學學報(自然科學版).2004,25, (12):1-3.
[4]劉海春,翁曉光.微機和單片機串行通信[J].電子測量技術.2004,10(02):59-60.
[5]尹若丹,馬保吉,基于VC++6.0的PC機和單片機的接口設計[J].電腦知識與技術(學術交流),2007,10(13):171-174.
[6]于春霞,劉世萱,楊俊賢.觸摸液晶的控制設計與坐標的獲取[J].自動化技術與應用.2009,28(03):118-120.
[7]王海欣,黃海宏.液晶顯示器的漢字顯示方法[J].液晶與顯示.2005,20(02):155-158.
[8]黃彬,張冰蔚.基于單片機的液晶觸摸屏控制系統[J].工業控制計算機.2005,18(07):50-51.