電阻(zu)式:定位準確,單(dan)點觸摸
電容(rong)(rong)感應(ying)(ying)式:電容(rong)(rong)感應(ying)(ying)式:支持多(duo)點觸摸,價格偏貴。工業應(ying)(ying)用最(zui)廣泛
紅外(wai)線(xian)式(shi):價格(ge)低廉,但其外(wai)框易(yi)碎,容易(yi)產生光干擾(rao),曲(qu)面情況下失真(zhen)
表面聲波式(shi):解決各(ge)種(zhong)缺點,但是屏幕表面如果有(you)水滴和塵土會使觸摸(mo)屏變的遲(chi)鈍
注:觸摸屏本質上與液晶是分離的,觸摸屏負責的是檢測觸摸點,液晶屏負責的是顯示。區別開來;電容觸摸屏一般都(dou)需要一個驅動IC來檢測電容觸摸,且(qie)一般是通過IIC接口(kou)輸出觸摸數(shu)據的。
GT9147:采用17*10的驅(qu)動(dong)結構(10個(ge)感應通道,17個(ge)驅(qu)動(dong)通道)
OTT2001A:采用(yong)13*8的(de)驅(qu)(qu)動結(jie)構(8個(ge)感(gan)應通道,13個(ge)驅(qu)(qu)動通道)
注:它們與MCU連接通(tong)過(guo)4根線(xian):SDA、SCL、RST和INT。
GT9147的(de)IIC地(di)(di)址(zhi),可以是0X14或者0X5D,當復(fu)位(wei)結束后(hou)的(de)5ms內,如果INT是高電平,則使(shi)用(yong)0X14作為地(di)(di)址(zhi),否(fou)則使(shi)用(yong)0X5D作為地(di)(di)址(zhi),具體的(de)設置過程,請看:GT9147數據手冊.pdf這個文檔。本章我們使(shi)用(yong)0X14作為器(qi)件地(di)(di)址(zhi)(不含最低(di)位(wei),換算成(cheng)讀(du)寫(xie)命令則是讀(du):0X29,寫(xie):0X28)
控制命令寄存器(0X8040)
該(gai)(gai)寄(ji)存器(qi)可(ke)(ke)以(yi)寫(xie)入不同(tong)值,實現(xian)不同(tong)的控(kong)制,我們一(yi)般使(shi)用0和2這兩個(ge)值,寫(xie)入2,即可(ke)(ke)軟復(fu)(fu)(fu)位(wei)GT9147,在硬(ying)復(fu)(fu)(fu)位(wei)之后,一(yi)般要往該(gai)(gai)寄(ji)存器(qi)寫(xie)2,實行軟復(fu)(fu)(fu)位(wei)。然后,寫(xie)入0,即可(ke)(ke)正常讀取坐標數據(并且會(hui)結束軟復(fu)(fu)(fu)位(wei))。
配(pei)置寄存器組(0X8047~0X8100)
這(zhe)里共186個(ge)(ge)寄存器,用于配(pei)(pei)置(zhi)GT9147的(de)各個(ge)(ge)參數,這(zhe)些配(pei)(pei)置(zhi)一般由廠(chang)家提(ti)供給我(wo)們(一個(ge)(ge)數組(zu)),所以我(wo)們只(zhi)需要將廠(chang)家給我(wo)們的(de)配(pei)(pei)置(zhi),寫入到(dao)這(zhe)些寄存器里面,即可完(wan)成GT9147的(de)配(pei)(pei)置(zhi)。
產品ID寄存器(0X8140~0X8143)
這(zhe)里總共由4個寄(ji)存器(qi)組(zu)成(cheng),用于保(bao)存產品ID,對于GT9147,這(zhe)4個寄(ji)存器(qi)讀出來(lai)(lai)就是(shi):9,1,4,7四個字符(ASCII碼格(ge)式)。因(yin)此(ci),我(wo)們可以通過這(zhe)4個寄(ji)存器(qi)的(de)值,來(lai)(lai)判斷驅動IC的(de)型(xing)號,從而判斷是(shi)OTT2001A還是(shi)GT9147,以便執行(xing)不同的(de)初始(shi)化。
狀(zhuang)態(tai)寄存器(qi)(0X814E)
我們(men)僅(jin)關心(xin)最(zui)高(gao)位和最(zui)低(di)4位,最(zui)高(gao)位用(yong)于表示buffer狀態,如果有(you)(you)數據(坐標/按鍵),buffer就會是1,最(zui)低(di)4位用(yong)于表示有(you)(you)效觸(chu)點的個(ge)數,范圍是:0~5,0,表示沒有(you)(you)觸(chu)摸,5表示有(you)(you)5點觸(chu)摸。
坐標數據寄存器(共(gong)30個)
這里共分成5組(5個點),每組6個寄存器存儲數據,以觸點1的坐標數據寄存器組為例,
我們一般只用到觸點的x,y坐標,所以只需要讀取0X8150~0X8153的數據,組合即可得到觸點坐標。其他4組分別是:0X8158、0X8160、0X8168和0X8170等開頭的16個寄存器組成,分別針對觸點2~4的坐標。同樣GT9147也支持寄存器地址自增,我們只需要發送寄存器組的首地址,然后連續讀取即可,GT9147會自動地址自增,從而提高讀取速度。
2017 ? 廣州創天電子科技有限公司 版權所有 備案號