ARM7202觸摸屏接口設計方案
3 觸摸屏控制程序機制
不同的操作系統(tǒng)下對觸摸屏的應用各有不同,但都包括了設備的初始化、設備讀寫及中斷響應等基本模塊。觸摸屏的驅動程序涉及到兩個中斷:落筆中斷和觸摸屏A/D轉換中斷。所包含的程序模塊有:觸摸屏初始化、落筆中斷服務程序、A/D中斷服務程序、濾波程序和坐標轉換程序。這里重點說明觸摸屏的兩個中斷。
觸摸屏初始化程序完成外部電路的中斷設置和采樣率的設置,并將觸摸屏的A/D中斷和A/D轉換器電源關閉,使外部電路中斷有效。
有落筆時,外部中斷被觸發(fā),進入落筆中斷服務程序。在落筆中斷服務程序中清中斷源,關外部中斷,使外部中斷電路無效,打開觸摸屏中斷和AD轉換器電源。此時觸摸屏電路開始掃描觸摸屏。觸摸屏A/D轉換結束后,產生A/D中斷,進入A/D中斷服務程序。在觸摸屏A/D中斷服務程序中,清A/D中斷,關觸摸屏A/D中斷,讀A/D轉換值。此時還要判斷落筆是否繼續(xù),若無落筆,開外部電路中斷,使外部中斷電路有效,關A/D中斷和A/D轉換器電源,進入節(jié)能模式,如圖4(a);若還有落筆,要繼續(xù)開觸摸屏A/D中斷,使外部中斷電路無效,觸摸屏的A/D轉換繼續(xù)進行,如圖4(b)所示。

圖4 觸摸屏程序流圖
由A/D轉換得到的值是觸摸屏上觸摸點的X坐標和Y坐標的值,要通過一定的方法轉換為顯示屏上的坐標。限于篇幅這里省略,其原理和實現方法見參考文獻[2]。在A/D轉換時,每次由A/D轉換寄存器得到4組轉換值,可以設計一個濾波程序以提高檢測精度。
評論