基于ARM微處理器的液晶觸摸屏的接口設計
(3)資源分配
LPC2148的P0.8~P0.23作為16位數據線(D0~D15),經JP1插座與液晶模塊的DB0~DB15連接;P0.0、P0.26、P0.28~P0.31作為液晶模塊的控制口線使用,經JP1分別與液晶模塊的PWM、CS、RESET、RS、RD和WR連接;P0.27、P1.16~P1.20用于觸摸屏控制,通過JP1的連接分別接ADS7843的BUSY、7843-CS(CS)、DCLK、DIN、INT(PENIRQ)和DOUT引腳。
P1.26~P1.31作為JTAG功能使用,JP2為微處理器JTAG程序調試及下載端口。
P0.25作為蜂鳴器控制口線,蜂鳴器電路用于液晶觸摸或顯示時發(fā)出蜂鳴聲響,作為人機對話的輔助功能。蜂鳴器使用PNP三極管8550(Q2)進行驅動,其放大倍數高(hFE=300),基級偏置電阻R8為1k,當輸入低電平時,Q1為深度飽和導通,可為蜂鳴器提供足夠的電流。
(4)電源電路
LPC2148為單電源供電,CPU操作電壓為3.0~3.6V。
電路采用+3.3V供電,外接+5V直流電源經AMS1117(U4)穩(wěn)壓器穩(wěn)壓后,輸出+3.3V電壓,給液晶模塊和ADS7843供電。AMS1117的特點是輸出電流大(800mA),輸出電壓精度在1%以內,具有電流限制和熱保護功能,穩(wěn)定性好。C4、C5、C6均為電源濾波電容。
3軟件編程
3.1對液晶屏的C程序設計
液晶屏的軟件設計采用C語言編程。包括液晶屏初始化、寫液晶控制字、寫液晶數據子程序、讀液晶液晶數據、全屏顯示單色、指定位置顯示漢字和字符、指定位置顯示圖片、清屏等子程序。
寫液晶數據子程序為:
觸摸屏的程序設計主要是確定其位置坐標與液晶屏上位置坐標的對應關系,通過一定的算法把觸摸屏觸摸信息轉化為液晶屏上的位置坐標。液晶屏像素為240×320,從觸摸屏接收到的X值不在0~320范圍變化、Y值也不在0~240范圍變化,在觸摸屏的邊緣區(qū)域,X、Y方向輸出數據變化較大,是非線性關系,坐標值在中間大部分范圍內基本是成線性變化的。為了較準確的進行坐標轉換,可采用線性求值和查表相結合的方式進行坐標轉換。
觸摸屏的C程序設計主要包括觸摸屏初始化子函數、讀A/D轉換值子函數、坐標原始值子函數和坐標轉換子函數。
與ADS7843相關的引腳C程序預處理為:
讀A/D轉換值子函數:
4結束語
在嵌入式智能設備中,用液晶觸摸屏取代傳統(tǒng)的按鍵、LED等人機對話部件,具有操作簡便、界面友好及功能較強等優(yōu)點。隨著LCD液晶屏價格的進一步下降,液晶觸摸屏有著更寬廣的應用市場,基于ARM微處理器與液晶觸摸屏的技術開發(fā)具有現實意義和社會經濟價值。本系統(tǒng)以ARM7處理器LPC2148作為主控制器,與傳統(tǒng)單片機相比,具有較大的數據存儲容量和較快的圖片處理速度;液晶屏帶觸摸功能,大大增強了人機對話的交互能力;基于C語言的編程方法有較強的實時性。所設計的液晶觸摸屏應用于ARM嵌入式創(chuàng)新實訓系統(tǒng)和便攜式鐵路平調裝置故障檢測儀,觸摸鍵反應靈敏,與ARM7處理器接口電路運行可靠,驗證了系統(tǒng)設計的可行性,具有較高的實際應用價值。
蜂鳴器相關文章:蜂鳴器原理
評論