基于ADS7846實現的液晶顯示觸摸控制設計
3 觸點坐標與液晶顯示屏控制功能對應定位的確定
本例中ADS7846 采用差動參考電壓方式,以減小測量誤差,由于觸摸屏存在著個體差異,不同觸摸屏邊沿的測量值不同,測量值達不到0 或者滿量程(4096) ,而液晶顯示屏具有較為準確的定位數值,很難實現觸摸屏與液晶顯示屏的點與點一一對應,給編程調試帶來很大麻煩,只能實現觸摸屏與液晶顯示屏之間的區域對應,不影響液晶顯示屏的顯示功能和觸摸屏的控制功能。
觸摸屏控制器ADS7846 通過SPI 接口連接到微控制器A T89S51 上。當發生觸摸時, 由ADS7846 向A T89S51 提出中斷請求, 接著A T89S51 就會響應該中斷請求,通過SPI 讀取ADS7846 的轉換結果,得到觸摸點的坐標。圖5為中斷服務子程序與ADS7846 測量子程序流程圖。
圖5 中斷服務子程序與ADS7846 測量子程序流程圖
為了有效地找到觸摸屏觸摸點與點陣式液晶顯示屏對應區域坐標范圍,按照液晶顯示屏的顯示功能區域的點陣坐標,按照液晶屏上顯示的控制信息字符格式,合理選擇水平線和豎直線,按照液晶顯示和觸摸屏控制功能區域進行觸摸點數值測量,找到與液晶顯示屏對應的觸摸屏控制區域的觸摸點數值范圍。根據觸摸屏觸摸點坐標實測數據分析可以得到對應的液晶屏上像素點坐標。
液晶屏像素點坐標與觸摸屏觸摸點實測數值之間的關系可以表示為:
式中: X 、Y 為觸點測量值; ( Xmin , Ymin ) 和( Xmax ,Xmax ) 分別為觸摸屏上的最大值和最小值坐標觸點測量; ( X1 , Y1 ) 為觸點在液晶屏上的像素坐標,表3 、表4 中數據為實測數據。
表3 實測豎直直線上等距離測量坐標值
表4 實測水平直線上等距離測量坐標值
值得注意的是,經測量觸摸屏X 方向的轉換值為從大
評論