一、XPT2046簡(jiǎn)介 四線電阻式觸摸屏,主要由兩層鍍有ITO鍍層的薄膜組成。其中一層在屏幕的左右邊緣各有一條垂直總線,另一層在屏幕的底部和頂部各有一條水平總線,如果在一層薄膜的兩條總線上施加電壓,在ITO鍍層上就會(huì)形成均勻電場(chǎng)。當(dāng)使用者觸擊觸摸屏?xí)r,觸擊點(diǎn)處兩層薄膜就會(huì)接觸,在另一層薄膜上就可以測(cè)量到接觸點(diǎn)的電壓值。 為了在X軸方向進(jìn)行測(cè)量,將左側(cè)總線偏置為0V,右側(cè)總線偏置為VCC。將頂部或底部總線連接到ADC,當(dāng)頂層和底層相接觸時(shí)即可作一次測(cè)量。 為了在Y軸方向進(jìn)行測(cè)量,將頂部總線偏置為VCC,底部總線偏置為0V。將ADC輸入端接左側(cè)總線或右側(cè)總線,當(dāng)頂層與底層相接觸時(shí)即可對(duì)電壓進(jìn)行測(cè)量。 如下圖,測(cè)量出來的電壓值與接觸點(diǎn)的位置線性相關(guān),即可以由VPX和VPY分別計(jì)算出接觸點(diǎn)P的X和Y坐標(biāo)。 在實(shí)際測(cè)量中,控制電路會(huì)交替在X和Y電極組上施加VCC電壓,進(jìn)行電壓測(cè)量和計(jì)算接觸點(diǎn)的坐標(biāo)。舉例說明測(cè)量流程: 第一步,在X+上施加VCC,X-上施加0V電壓,測(cè)量Y+(或Y-)電極上的電壓值VPX,計(jì)算出接觸點(diǎn)P的X坐標(biāo); 第二步,在Y+上施加VCC,Y-上施加0V電壓,測(cè)量X+(或X-)電極上的電壓值VPY,計(jì)算出接觸點(diǎn)P的Y坐標(biāo); 以上兩步組成一個(gè)測(cè)量周期,可以得到一組(X,Y)坐標(biāo)。 圖2.1:觸摸屏工作原理示意圖 1、電阻觸摸屏控制器XPT2046 通過以上介紹,可知要實(shí)現(xiàn)對(duì)某個(gè)觸摸點(diǎn)的坐標(biāo)測(cè)量,需要對(duì)電阻觸摸屏模組的兩層導(dǎo)電薄膜分時(shí)施加電壓,在對(duì)其中一個(gè)導(dǎo)電薄膜的電極施加電壓時(shí),使用ADC去測(cè)量另一層導(dǎo)電薄膜的電極上的電壓。由此可知,觸摸控制器必須能夠支持兩個(gè)功能: 1)觸摸控制器能夠?qū)B接的電極施加電壓 2)觸摸控制器能夠測(cè)量電極上的電壓(ADC) 即觸摸控制器不僅僅是簡(jiǎn)單的ADC,因?yàn)槠溥要能夠給電極提供電壓,所以我們無法使用通用的ADC來完成4線電阻觸摸屏的控制。為了實(shí)現(xiàn)對(duì)電阻觸摸屏的控制,以TI為代表的眾多廠商推出了專用的觸摸控制器,如TI的TSC2046、ADS7843,兩者功能相同,封裝兼容,可以直接替換。同時(shí),國(guó)內(nèi)也有廠商推出了能夠完全兼容的器件,最典型的如深圳矽普特公司推出的XPT2046,該芯片可完全兼容TI的TSC2046器件。本教程主要以該芯片為依據(jù)進(jìn)行講解。 2、XPT2046特性: 工作電壓范圍為2.2V~5.25V 支持1.5V~5.25V的數(shù)字I/O口 內(nèi)建2.5V參考電壓源 電源電壓測(cè)量(0V~6) 內(nèi)建結(jié)溫測(cè)量功能 觸摸壓力測(cè)量 采用SPI3線控制通信接口 具有自動(dòng)power-down功能 封裝:QFN-16、TSSOP-16和VFBGA-48 與TSC2046、AK4182A完全兼容 XPT2046在125KHz轉(zhuǎn)換速率和2.7V電壓下的功耗僅為750μW。XPT2046以其低功耗和高速率等特性,被廣泛應(yīng)用在采用電池供電的小型手持設(shè)備上,比如PDA、手機(jī)等。 二、XPT2046中文資料詳解_XPT2046內(nèi)部框圖 下圖為XPT2046的功能框圖,可見XPT2046內(nèi)部包含了一個(gè)多路選擇器,能夠測(cè)量電池電壓、AUX電壓、芯片溫度。一個(gè)12位的ADC用于對(duì)選擇的模擬輸入通道進(jìn)行模數(shù)轉(zhuǎn)換,得到數(shù)字量,然后送入控制邏輯電路,供主控CPU進(jìn)行讀取,同時(shí),具體選擇哪個(gè)通道進(jìn)行轉(zhuǎn)換,也是由主控CPU發(fā)送命令給控制邏輯來設(shè)置的。 XPT支持筆觸中斷,即當(dāng)觸摸屏檢測(cè)到觸摸被按下時(shí),可以立即產(chǎn)生筆觸中斷,通知主控制器可以控制開始轉(zhuǎn)換并讀取數(shù)據(jù)。在轉(zhuǎn)換過程中,通過busy信號(hào)指示當(dāng)前忙狀態(tài),以避免主控發(fā)出新的命令中斷之前的命令。 三、XPT2046中文資料詳解_XPT2046引腳圖及功能 1、XPT2046引腳圖 圖 XPT2046引腳圖 2、XPT2046引腳功能 XPT2046通過SPI接口與主控制器進(jìn)行通信,其與主控制器的接口包括以下信號(hào): PENIRQ_N:筆觸中斷信號(hào),當(dāng)設(shè)置了筆觸中斷信號(hào)有效時(shí),每當(dāng)觸摸屏被按下,該引腳被拉為低電平。當(dāng)主控檢測(cè)到該信號(hào)后,可以通過發(fā)控制信號(hào)來禁止筆觸中斷,從而避免在轉(zhuǎn)換過程中誤觸發(fā)控制器中斷。該引腳內(nèi)部連接了一個(gè)50K的上拉電阻。 CS_N:芯片選中信號(hào),當(dāng)CS_N被拉低時(shí),用來控制轉(zhuǎn)換時(shí)序并使能串行輸入/輸出寄存器以移出或移入數(shù)據(jù)。當(dāng)該引腳為高電平時(shí),芯片(ADC)進(jìn)入掉電模式。 DCLK:外部時(shí)鐘輸入,該時(shí)鐘用來驅(qū)動(dòng)SARADC的轉(zhuǎn)換進(jìn)程并驅(qū)動(dòng)數(shù)字IO上的串行數(shù)據(jù)傳輸。 DIN:芯片的數(shù)據(jù)串行輸入腳,當(dāng)CS為低電平時(shí),數(shù)據(jù)在串行時(shí)鐘DCLK的上升沿被鎖存到片上的寄存器。 DOUT:串行數(shù)據(jù)輸出,在串行時(shí)鐘DCLK的下降沿?cái)?shù)據(jù)從此引腳上移出,當(dāng)CS_N引腳為高電平時(shí),該引腳為高阻態(tài)。 BUSY:忙輸出信號(hào),當(dāng)芯片接收完命令并開始轉(zhuǎn)換時(shí),該引腳產(chǎn)生一個(gè)DCLK周期的高電平。當(dāng)該引腳由高點(diǎn)平變?yōu)榈碗娖降臅r(shí)刻,轉(zhuǎn)換結(jié)果的最高位數(shù)據(jù)呈現(xiàn)在DOUT引腳上,主控可以讀取DOUT的值。當(dāng)CS_N引腳為高電平時(shí),BUSY引腳為高阻態(tài)。 四、XPT2046中文資料詳解_XPT2046工作原理 XPT2046是一種典型的逐次逼近型模數(shù)轉(zhuǎn)換器(SARADC),包含了采樣/保持、模數(shù)轉(zhuǎn)換、串口數(shù)據(jù)輸出等功能。同時(shí)芯片集成有一個(gè)2.5V的內(nèi)部參考電壓源、溫度檢測(cè)電路,工作時(shí)使用外部時(shí)鐘。XPT2046可以單電源供電,電源電壓范圍為2.7V~5.5V。參考電壓值直接決定ADC的輸入范圍,參考電壓可以使用內(nèi)部參考電壓,也可以從外部直接輸入1V~VCC范圍內(nèi)的參考電壓(要求外部參考電壓源輸出阻抗低)。X、Y、Z、VBAT、Temp和AUX模擬信號(hào)經(jīng)過片內(nèi)的控制寄存器選擇后進(jìn)入ADC,ADC可以配置為單端或差分模式。選擇VBAT、Temp和AUX時(shí)可以配置為單端模式;作為觸摸屏應(yīng)用時(shí),可以配置為差分模式,這可有效消除由于驅(qū)動(dòng)開關(guān)的寄生電阻及外部的干擾帶來的測(cè)量誤差,提高轉(zhuǎn)換準(zhǔn)確度。 下圖為XPT2046的典型工作電路: XPT2046有四個(gè)引腳,用于連接到四線制電阻屏的FPC上,分別為XP、XN、YP、YN,連接到對(duì)應(yīng)的四線制電阻屏的X電極的正端、負(fù)端和Y電極的正端、負(fù)端。此四個(gè)引腳每個(gè)都能工作于兩種狀態(tài),分別為電源/GND輸出、ADC輸入。例如設(shè)置ADC工作在差分模式,當(dāng)測(cè)量X方向的坐標(biāo)時(shí),XP輸出VCC、XN連接到GND,此時(shí),YP和YN作為ADC的差分輸入腳連接到ADC上,通過測(cè)量YP和YN之間的電壓差來得到當(dāng)前觸摸點(diǎn)的X位置。同理,當(dāng)測(cè)量Y方向的坐標(biāo)時(shí),YP輸出VCC、YN連接到GND、此時(shí),XN和XP作為ADC的差分輸入腳連接到ADC上,通過測(cè)量YP和YN之間的電壓差來得到當(dāng)前觸摸點(diǎn)的Y位置。 五、XPT2046中文資料詳解_XPT2046典型應(yīng)用 一)24時(shí)鐘周期轉(zhuǎn)換 1、讀寫時(shí)序 了解了XPT2046的接口電路,接下來我們就可以通過主控MCU或FPGA來控制該芯片實(shí)現(xiàn)坐標(biāo)的讀取了。要想正確的讀到X、Y坐標(biāo),需要按照芯片規(guī)定的控制協(xié)議進(jìn)行數(shù)據(jù)的讀寫。XPT2046實(shí)現(xiàn)一次X、Y坐標(biāo)的讀取需要完成兩次轉(zhuǎn)換,單一一次轉(zhuǎn)換只能得到單一X或Y的坐標(biāo),因此,我們必須通過兩次控制才能到到結(jié)果。至于每一次轉(zhuǎn)換的對(duì)象為X或Y坐標(biāo),由控制器發(fā)出的控制字決定。ADC在轉(zhuǎn)換時(shí)能夠被配置為單端或差分模式,具體的控制字在每次傳輸開始的時(shí)候,由主控MCU驅(qū)動(dòng)DIN信號(hào)傳輸。下圖為XPT2046典型的24時(shí)鐘周期轉(zhuǎn)換控制時(shí)序: XPT2046數(shù)據(jù)接口是串行接口,其典型工作時(shí)序如上圖所示,圖中展示的信號(hào)來自帶有基本串行接口的單片機(jī)或數(shù)據(jù)信號(hào)處理器。處理器和轉(zhuǎn)換器之間的的通信需要8個(gè)時(shí)鐘周期,可采用SPI、SSI和Microwire等同步串行接口。一次完整的轉(zhuǎn)換需要24個(gè)串行同步時(shí)鐘(DCLK)來完成。 前8個(gè)時(shí)鐘用來通過DIN引腳輸入控制字節(jié)。當(dāng)轉(zhuǎn)換器獲取有關(guān)下一次轉(zhuǎn)換的足夠信息后,接著根據(jù)獲得的信息設(shè)置輸入多路選擇器和參考源輸入,并進(jìn)入采樣模式,如果需要,將啟動(dòng)觸摸面板驅(qū)動(dòng)器。3個(gè)多時(shí)鐘周期后,控制字節(jié)設(shè)置完成,轉(zhuǎn)換器進(jìn)入轉(zhuǎn)換狀態(tài)。這時(shí),輸入采樣-保持器進(jìn)入保持狀態(tài),觸摸面板驅(qū)動(dòng)器停止工作(單端工作模式)。接著的12個(gè)時(shí)鐘周期將完成真正的模數(shù)轉(zhuǎn)換。如果是度量比率轉(zhuǎn)換方式(SER/DFR——=0),驅(qū)動(dòng)器在轉(zhuǎn)換過程中將一直工作,第13個(gè)時(shí)鐘將輸出轉(zhuǎn)換結(jié)果的最后一位。剩下的3個(gè)多時(shí)鐘周期將用來完成被轉(zhuǎn)換器忽略的最后字節(jié)(DOUT置低) 2、控制字的設(shè)置 表3控制字段的每一位功能 控制字節(jié)由DIN輸入的控制字如下表所示,它用來啟動(dòng)轉(zhuǎn)換,尋址,設(shè)置ADC分辨率,配置和對(duì)XPT2046進(jìn)行掉電控制。 起始位:第一位,即S位。控制字的首位必須是1,即S=1。在XPT2046的DIN引腳檢測(cè)到起始位前,所有的輸入將被忽略。 地址:接下來的3位(A2、A1和A0)選擇多路選擇器的現(xiàn)行通道(見表1、表2),觸摸屏驅(qū)動(dòng)和參考源輸入。 MODE:模式選擇位,用于設(shè)置ADC的分辨率。MODE=0,下一次的轉(zhuǎn)換將是12位模式;MODE=1,下一次的轉(zhuǎn)換將是8位模式。 SER/DFR:SER/DFR位控制參考源模式,選擇單端模式(SER/DFR=1),或者差分模式(SER/DFR=0)。在X坐標(biāo)、Y坐標(biāo)和觸摸壓力測(cè)量中,為達(dá)到最佳性能,首選差分工作模式。參考電壓來自開關(guān)驅(qū)動(dòng)器的電壓。在單端模式下,轉(zhuǎn)換器的參考電壓固定為VREF相對(duì)于GND引腳的電壓(更詳細(xì)的說明,見表1和表2)。 表1單端模式下的地址與通道對(duì)應(yīng)關(guān)系 表2差分模式下的地址與通道對(duì)應(yīng)關(guān)系 PD0和PD1:表5展示了掉電和內(nèi)部參考電壓配置的關(guān)系。ADC的內(nèi)部參考電壓可以單獨(dú)關(guān)閉或者打開,但是,在轉(zhuǎn)換前,需要額外的時(shí)間讓內(nèi)部參考電壓穩(wěn)定到最終穩(wěn)定值;如果內(nèi)部參考源處于掉電狀態(tài),還要確保有足夠的喚醒時(shí)間。ADC要求是即時(shí)使用,無喚醒時(shí)間的。另外還得注意,當(dāng)BUSY是高電平的時(shí)候,內(nèi)部參考源禁止進(jìn)入掉電模式。XPT2046的通道改變后,如果要關(guān)閉參考源,則要重新對(duì)XPT2046寫入命令。 表4 控制字段每一位功能的具體說明 表5 PD位功能說明 上述通過24時(shí)鐘周期的轉(zhuǎn)換時(shí)序講解了單次轉(zhuǎn)換的時(shí)序,在實(shí)際應(yīng)用中,為了提高轉(zhuǎn)換效率,XTP2046提供了16時(shí)鐘轉(zhuǎn)換模式和15時(shí)鐘轉(zhuǎn)換模式。 二)16時(shí)鐘周期轉(zhuǎn)換 第n+1次轉(zhuǎn)換的控制位可以與第n次轉(zhuǎn)換部分重疊,所以可以用16個(gè)時(shí)鐘周期完成一次轉(zhuǎn)換,如圖16所示。圖16也說明了處理器和轉(zhuǎn)換器之間的串行通信是可以雙向獨(dú)立進(jìn)行的。此時(shí),每次轉(zhuǎn)換必須在開始后(接收到start)的1.6mS內(nèi)完成,否則輸入采樣保持電路取樣的信號(hào)會(huì)逐漸被放電衰減,影響轉(zhuǎn)換結(jié)果。另外,在轉(zhuǎn)換過程中另一串行通信的存在會(huì)使XPT2046工作于全功耗狀態(tài)下。 8位總線接口,無DCLK時(shí)鐘延遲16時(shí)鐘周期轉(zhuǎn)換時(shí)序 該模式下,DCLK的時(shí)鐘高電平和低電平均要求最小值為200ns,即DCLK的時(shí)鐘周期為2.5MHz。 三)15時(shí)鐘周期轉(zhuǎn)換 下圖給出了XPT2046的最快時(shí)序。這種方法不支持大部分的微控制器和數(shù)字信號(hào)處理器的串行接口,因?yàn)樗鼈円话愣疾惶峁?5周期的串行傳輸方式。但是,這種方法適用于FPGA和ASIC。需要注意的是,這樣有效地提高了轉(zhuǎn)換器的最大轉(zhuǎn)換速率。 最快轉(zhuǎn)換速率,15時(shí)鐘周期轉(zhuǎn)換 在不影響輸出精度的前提下提高數(shù)據(jù)吞吐量,XPT2046可以采用8位的轉(zhuǎn)換模式。切換到8位轉(zhuǎn)換模式,完成提前4個(gè)時(shí)鐘完成一次轉(zhuǎn)換。不僅每次轉(zhuǎn)換縮短了都4位(數(shù)據(jù)吞吐量提高了25%),而且由于精度的降低,可以工作在更快的轉(zhuǎn)換速率下,時(shí)鐘速度可以提高50%,時(shí)鐘速度的提高和轉(zhuǎn)換周期的減少,共同可以使轉(zhuǎn)換速率提高2倍。
完整的Word格式文檔51黑下載地址:
XPT2046中文資料詳解.docx
(1.32 MB, 下載次數(shù): 65)
2019-1-31 11:23 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|