基于A(yíng)RM7支持觸摸屏和實(shí)時(shí)操作系統的開(kāi)發(fā)與應用
本文采用固定參考電壓模式,在驅動(dòng)程序開(kāi)發(fā)過(guò)程中,需要關(guān)注時(shí)鐘端、輸入端和輸出端的時(shí)序特性。首先檢測PENIRQ是否為低電平,只有觸摸屏有接觸時(shí)此位才會(huì )為低電平。利用軟件模擬DIN、DOUT和DCLK上的三線(xiàn)串行傳輸時(shí)序,將讀取的X或Y坐標數值的控制字串行送人ADS7843,然后再從對應的函數讀出該坐標值,獲取坐標值的源程序如下:
int TOUCH_X_MeasureX(void)
{
X=ReadTouchXY(CHX);
return X;
}
int TOUCH_X_MeasureY(void)
{
Y=ReadTouchXY(CHY);
return Y;
}
其中,ReadTouchXY()函數通過(guò)TOUCH_X_MeasureX(void)、TOUCH_X_MeasureY(void)讀取對應坐標的X、Y軸的電壓值,并送入主控程序進(jìn)行坐標轉化,得出當前觸摸屏按壓的位置。
int ReadTouchXY(unsigned char
command)
{
//根據command參數,進(jìn)行X、Y向觸摸點(diǎn)選擇、去抖、位置的計算等
return ack;//返回觸摸屏對應位
置值;
評論