在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RTC時鐘與觸摸功能詳解(下)

jf_78858299 ? 來源:金沙灘工作室 ? 作者:金沙灘工作室 ? 2023-05-26 14:45 ? 次閱讀

58.5 電阻式觸摸控制器——XPT2046

為了方便測量觸摸屏的坐標(biāo),芯片廠商設(shè)計(jì)了專門的觸摸屏控制芯片,實(shí)現(xiàn)觸摸點(diǎn)電壓測量與轉(zhuǎn)換功能。本文采用的XPT2046是一款4導(dǎo)線制觸摸屏控制器,內(nèi)含12位分辨率

125KHz 轉(zhuǎn)換速率逐次逼近型A/D轉(zhuǎn)換器。XPT2046通過執(zhí)行兩次A/D轉(zhuǎn)換便可以計(jì)算出觸摸點(diǎn)位置,該芯片兼容 ADS7843 觸摸芯片,其電路原理圖和引腳圖如圖8-6和表8-1、表8-2所示。

圖片

圖片

XPT2046的電源VCC的范圍為2.7V~5.5V。A/D轉(zhuǎn)換所需的參考電壓可以選擇通過VREF輸入,范圍是1V~VCC;也可以采用內(nèi)部內(nèi)部 2.5V參考電壓,采用內(nèi)部參考電壓時VREF引腳應(yīng)懸空。XPT2046除了作為觸摸驅(qū)動芯片,還可以進(jìn)行電池電壓檢測、溫度測量,以及壓力測量。作為觸摸屏應(yīng)用時,X+、X-、Y+、Y-分別連接電阻觸摸屏的X+、X-、Y+、Y-引腳,測量時芯片會根據(jù)指令自動切換X、Y電極的電壓,并采集觸摸點(diǎn)的電壓進(jìn)行快速A/D轉(zhuǎn)換。

XPT2046的ADC可以配置為單端或差分模式,具體如下:

單端模式是以外部參考電壓VREF為參考,在采樣過程完成后,進(jìn)行A/D轉(zhuǎn)換時可以關(guān)閉驅(qū)動開關(guān),以降低功耗。但這種模式的缺點(diǎn)是精度直接受參考電壓源的精度限制,同時由于內(nèi)部驅(qū)動開關(guān)存在導(dǎo)通電阻,導(dǎo)通電阻與觸摸屏電阻的分壓作用,也會帶來測量誤差。因此該模式主要應(yīng)用于電池監(jiān)測、溫度測量和壓力測量。

差分工作模式是以X、Y電極兩端的電壓作為差分輸入電壓,可消除由于驅(qū)動開關(guān)的導(dǎo)通電阻引入的坐標(biāo)測量誤差。缺點(diǎn)是驅(qū)動開關(guān)一直接通,相對于單端輸入模式而言,功耗變高了。作為觸摸屏應(yīng)用時,為了提高轉(zhuǎn)換精度,應(yīng)該配置為差分模式。

68.6 XPT2046通信接口及控制命令

XPT2046允許采用SPI,SSI,Microwire等串行接口通信,本文采用IO口模擬SPI方式通信。XPT2046一次完整的數(shù)據(jù)轉(zhuǎn)換一般需要24個時鐘周期,即通信時單片機(jī)必須提供24個時鐘周期才能保證XPT2046完成一次數(shù)據(jù)轉(zhuǎn)換,數(shù)據(jù)按照高位在前、低位在后的順序傳輸,當(dāng)CS為低電平時,數(shù)據(jù)在CLK的上升沿鎖存,下降沿輸出(即CPOL=0,CPHA=1的模式)通信時序如8-7所示。

圖片

圖8-7 XPT2046 24時鐘周期轉(zhuǎn)換時序圖

結(jié)合時序圖,操作步驟如下:

1、發(fā)送控制字命令。前8個時鐘周期單片機(jī)通過DIN(MOSI)引腳發(fā)送控制字命令,用于配置XPT2046的工作模式。控制命令由8個數(shù)據(jù)位組成,包括起始位、通道選擇位、分辨率選擇位、輸入方式和低功率模式,控制命令如表8-3所示。

圖片

(1)起始位——第一位,即 S 位。控制字的起始位必須為 1,否則所有的輸入將被忽略。

(2)通道選擇位——A2、A1、A0用于選擇對哪一個通道進(jìn)行A/D轉(zhuǎn)換。差分模式下:當(dāng)A2=0,A1=0,A0=1時表示選擇X+通道,即測量Y軸坐標(biāo);當(dāng)A2=1,A1=0,A0=1時表示選擇Y+通道,即測量X軸坐標(biāo)。測量坐標(biāo)時,要分別測量X+和Y+通道。

(3)MODE——模式選擇位,用于設(shè)置 ADC 的分辨率。為0表示下一次的轉(zhuǎn)換為 12 位模式;為1表示下一次的轉(zhuǎn)換將是 8 位模式,默認(rèn)設(shè)置選擇12位模式。

(4)SER/DFR——輸入模式選擇位,單端輸入方式/差分輸入方式選擇位。為1是單端輸入方式,為0是差分輸入方式,觸摸測量時默認(rèn)選擇差分模式,即設(shè)置該位為0。

(5)PD1和PD0——模式選擇位,其功能如表8-4所示。若為11,器件總處于全功耗模式;若為00,器件在A/D轉(zhuǎn)換之間處于低功率模式。同時PD0位還控制是否產(chǎn)生PENIRQ中斷,如果使能PENIRQ中斷,當(dāng)有觸摸動作時,PENIRQ引腳會輸出0,否則輸出1,通過PENIRQ引腳可以判斷是否有觸摸動作,本教材默認(rèn)設(shè)置PD1、PD0為00。

2、電壓采樣。當(dāng)XPT2046接收到5個控制命令位時,即在接收到MODE位后,XPT2046內(nèi)部就可以根據(jù)控制位信息設(shè)置輸入多路選擇器和參考源輸入,并啟動觸摸面板驅(qū)動器,開始進(jìn)入采樣模式,該動作與SPI串行通信是同步的,并不影響剩余控制位的傳輸,如圖8-7種的時序圖所示;3個多時鐘周期后,控制字接收完成,于此同時采樣完畢,轉(zhuǎn)換器進(jìn)入轉(zhuǎn)換狀態(tài),此時XPT2046會將BUSY引腳置高,表示數(shù)據(jù)正在轉(zhuǎn)換。

3、轉(zhuǎn)換結(jié)束后需要提供16個時鐘信號,其中第1個時鐘信號用于清除BUSY位,然后再發(fā)送12個時鐘周期將輸出轉(zhuǎn)換后的12位有效數(shù)據(jù)。最后3個時鐘信號用于輸出剩余3個無效數(shù)據(jù),默認(rèn)為0。

4、注意當(dāng)次讀取的轉(zhuǎn)換數(shù)據(jù),是上一次的轉(zhuǎn)換結(jié)果,而當(dāng)次的時鐘提供的轉(zhuǎn)換數(shù)據(jù),下一次讀取,因此第一次讀取的數(shù)據(jù)是無效數(shù)據(jù)。

78.7 觸摸屏校準(zhǔn)

計(jì)算觸摸點(diǎn)位置時需要引入兩個概念——物理坐標(biāo)和邏輯坐標(biāo)。物理坐標(biāo)就是觸摸點(diǎn)在液晶屏上的實(shí)際位置,通常以液晶上像素的個數(shù)來度量。本文采用的TFT-LCD的X和Y軸坐標(biāo)范圍分別為0239和0319。邏輯坐標(biāo)指的是觸摸點(diǎn)的電壓值經(jīng)ADC轉(zhuǎn)換后得到的坐標(biāo)值,由ADC精度決定,12位ADC模式下其范圍為0~4095。實(shí)際使用時需要通過邏輯坐標(biāo)計(jì)算相應(yīng)的實(shí)際物理坐標(biāo)。

觸摸屏是由液晶顯示屏(TFT-LCD)疊加一層觸摸層構(gòu)成一個矩形的實(shí)際物理平面。一方面由于存在誤差,這兩個平面并不是完全重合;另一方面由于 A/D轉(zhuǎn)換器的前端電路具有高輸入阻抗,因此特別容易受到電氣噪聲的干擾;觸摸屏本身電阻材料的均勻性以及模擬電子開關(guān)的內(nèi)阻和 A/D轉(zhuǎn)換器自身的轉(zhuǎn)換精度都會影響轉(zhuǎn)換后的邏輯坐標(biāo)值。基于以上兩方面原因?qū)е聦?shí)際的物理坐標(biāo)與軟件通過邏輯坐標(biāo)所計(jì)算的物理坐標(biāo)有所偏差。校準(zhǔn)的作用就是要將邏輯平面映射到物理平面上,即得到觸點(diǎn)在液晶屏上的位置坐標(biāo)。

由于電阻式觸摸屏的電壓成線性均勻分布,那么A/D轉(zhuǎn)換后的坐標(biāo)值也成線性。首先假定物理平面和邏輯平面之間的誤差是線性誤差,如果已知觸摸屏上一點(diǎn)A,其物理坐標(biāo)為(X a ,Y a ),相應(yīng)的邏輯坐標(biāo)為(X b ,Y b ),根據(jù)假定的線性關(guān)系,可以得到:

Xa = K ~x ~ * X ~b ~ + D x

Ya = K ~y ~ * X ~b ~ + D y ;

其中Kx、Ky分別為觸摸屏X方向和Y方向的縮放比例系數(shù),D x 、Dy為偏差常數(shù),它們由校準(zhǔn)點(diǎn)計(jì)算而來。根據(jù)觸摸屏的Kx、Ky、D x 、D y ,就可以通過邏輯坐標(biāo)計(jì)算出相對準(zhǔn)確的物理坐標(biāo)。

觸摸屏的校準(zhǔn)方法大致有兩點(diǎn)校準(zhǔn)、三點(diǎn)校準(zhǔn)、四點(diǎn)校準(zhǔn)、五點(diǎn)校準(zhǔn)等。其中校準(zhǔn)的點(diǎn)數(shù)越多,觸摸屏的校準(zhǔn)相對越精確。本文采用五點(diǎn)校正法。五點(diǎn)校正法優(yōu)勢在于可以更加精確的計(jì)算出X和Y方向的比例縮放系數(shù),同時提供了中心基準(zhǔn)點(diǎn),對于一些線性電阻系數(shù)比較差的電阻式觸摸屏有很好的校正作用。

首先在液晶屏的4個角取4個固定物理坐標(biāo)作為測量點(diǎn),并且在液晶屏中心位置取一個基準(zhǔn)點(diǎn),然后依次顯示各個校準(zhǔn)點(diǎn),并讀取該點(diǎn)的觸摸坐標(biāo),最后計(jì)算Kx、Ky、D x 、D y ,校準(zhǔn)點(diǎn)如圖8-8所示。

圖片

8-8 五點(diǎn)校準(zhǔn)示意圖

校準(zhǔn)流程如下所示:

1、依次顯示并觸摸5個校準(zhǔn)點(diǎn),并讀取觸摸坐標(biāo);

2、根據(jù)坐標(biāo)計(jì)算S1、S2、S3、S4、S5、S6五條線段的長度,并比較S1和S2,S3和 S4,S5和S6的距離,當(dāng)二者的距離小于一定范圍時,默認(rèn)校準(zhǔn)有效,否則無效,重新 校準(zhǔn)。當(dāng)距離差越小時,校準(zhǔn)越準(zhǔn)確。

3、根據(jù)所得的校準(zhǔn)點(diǎn)的邏輯坐標(biāo)計(jì)算縮放比例系數(shù)K x 、K y ,和偏差D x 、Dy公式如下:

Kx = ((X2-X1)/ S1+(X4-X3)/ S2)/2

Ky = ((Y3-Y1)/ S3+(Y4-Y2)/ S4)/2

D ~x ~ = (S1- K x *(X1+X2))/2

D ~y ~ = (S1- Ky*(Y1+Y2))/2

4、通過K x 、K y 、D x 、Dy以及中心基點(diǎn)的邏輯坐標(biāo)計(jì)算相應(yīng)的物理坐標(biāo),如果計(jì)算后的坐標(biāo)與實(shí)際坐標(biāo)誤差小于一定范圍,比如5個像素時認(rèn)為校準(zhǔn)成功,否則校準(zhǔn)失敗,需要重新校準(zhǔn)。

88.8 觸摸畫板實(shí)驗(yàn)

根據(jù)液晶屏的觸摸功能設(shè)計(jì)了一款簡易的觸摸畫板實(shí)驗(yàn)。觸摸畫板分為兩部分,功能區(qū)和繪畫區(qū),功能區(qū)用來選擇畫筆顏色和清除畫板,然后通過觸摸筆在繪畫區(qū)繪制圖案。

首先將觸摸事件分為按下、滑動、抬起三種事件,不同事件對應(yīng)不同的動作。當(dāng)滑動事件觸發(fā)時,如果觸摸點(diǎn)的坐標(biāo)位于繪畫區(qū),則在對應(yīng)位置通過畫點(diǎn)函數(shù)畫一個2*2的點(diǎn)。當(dāng)抬起動作觸發(fā)時,如果抬起時的坐標(biāo)是否位于功能區(qū),則觸發(fā)相應(yīng)的功能。

具體代碼如下:

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5412

    瀏覽量

    123155
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11028

    瀏覽量

    215811
  • 實(shí)時時鐘
    +關(guān)注

    關(guān)注

    4

    文章

    298

    瀏覽量

    66754
  • STM32F103
    +關(guān)注

    關(guān)注

    33

    文章

    481

    瀏覽量

    65000
收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    RTC時鐘模塊有哪些功能

    很多嵌入式設(shè)備在使用過程中,會碰到未聯(lián)網(wǎng)的狀態(tài),但是有需要保證時間的正常,或者定時開關(guān)機(jī)功能。這個時候就需要添加RTC 時鐘模塊。下面通過mstar 平臺的rx8130ce 型號時鐘調(diào)
    發(fā)表于 07-27 08:15

    W601的RTC時鐘功能概述

    計(jì)數(shù)器/定時器,兩個 32 位寄存器包含秒、分、時、日、月、年,以二進(jìn)制編碼的十進(jìn)制格式表示(BCD),能自動對 28、29(閏年)、30、31 天的月份進(jìn)行修正。在相應(yīng)軟件配置RTC 既可以提供時鐘日歷
    發(fā)表于 01-10 08:05

    淺談RTC實(shí)時時鐘特征與原理

    計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置,可提供時鐘日歷的功能。修改計(jì)數(shù)器的值可以重新設(shè)置系統(tǒng)當(dāng)前的時間和日期。 RTC模塊和時鐘配置系統(tǒng)(RCC_B
    的頭像 發(fā)表于 06-30 15:54 ?1.1w次閱讀

    STM32開發(fā) -- RTC詳解

    RTC (Real Time Clock):實(shí)時時鐘實(shí)時時鐘是一個獨(dú)立的定時器。 RTC模塊擁有一組連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置,可
    發(fā)表于 11-30 13:06 ?27次下載
    STM32開發(fā) -- <b class='flag-5'>RTC</b><b class='flag-5'>詳解</b>

    【STM32】RTC詳解

    00. 目錄文章目錄00. 目錄01. RTC概述02. RTC主要特性03. RTC部分功能3.1 時鐘和預(yù)分頻器3.2 實(shí)時
    發(fā)表于 12-04 17:21 ?26次下載
    【STM32】<b class='flag-5'>RTC</b><b class='flag-5'>詳解</b>

    STM32CubeMX | 基于STM32使用HAL庫驅(qū)動RTC時鐘及鬧鐘功能

    STM32使用HAL庫驅(qū)動RTC時鐘及鬧鐘功能目錄STM32使用HAL庫驅(qū)動RTC時鐘及鬧鐘功能
    發(fā)表于 12-06 09:21 ?52次下載
    STM32CubeMX | 基于STM32使用HAL庫驅(qū)動<b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b>及鬧鐘<b class='flag-5'>功能</b>

    RTC時鐘講解(一)

    什么是RTC RTC (Real Time Clock):實(shí)時時鐘 RTC是個獨(dú)立的定時器。RTC模塊擁有一個連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)的軟件
    的頭像 發(fā)表于 06-09 17:48 ?1w次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b>講解(一)

    STM32CubeMX-實(shí)時時鐘(RTC)

    實(shí)時時鐘 (RTC) 是一個獨(dú)立的 BCD 定時器/計(jì)數(shù)器。RTC 提供具有可編程鬧鐘中斷功能的日歷時鐘 /日歷。
    的頭像 發(fā)表于 01-14 17:24 ?2766次閱讀

    STM32學(xué)習(xí)筆記之RTC實(shí)時時鐘1

    STM32 的實(shí)時時鐘RTC)是一個獨(dú)立的定時器。 STM32 的 RTC 模塊擁有一組連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置,可提供時鐘日歷
    的頭像 發(fā)表于 05-26 14:26 ?2206次閱讀
    STM32學(xué)習(xí)筆記之<b class='flag-5'>RTC</b>實(shí)時<b class='flag-5'>時鐘</b>1

    STM32學(xué)習(xí)筆記之RTC實(shí)時時鐘2

    STM32 的實(shí)時時鐘RTC)是一個獨(dú)立的定時器。 STM32 的 RTC 模塊擁有一組連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置,可提供時鐘日歷
    的頭像 發(fā)表于 05-26 14:26 ?1396次閱讀
    STM32學(xué)習(xí)筆記之<b class='flag-5'>RTC</b>實(shí)時<b class='flag-5'>時鐘</b>2

    RTC時鐘觸摸功能詳解(上)

    是CPU內(nèi)部集成RTC模塊。STM32F103內(nèi)部集成了RTC模塊,可以通過配置相應(yīng)的寄存器來實(shí)現(xiàn)實(shí)時時鐘功能
    的頭像 發(fā)表于 05-26 14:44 ?2224次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b>與<b class='flag-5'>觸摸</b><b class='flag-5'>功能</b><b class='flag-5'>詳解</b>(上)

    RTC詳解

    RTC的本質(zhì)很簡單,就是一個時鐘經(jīng)過精確分頻最后得到的一個1Hz的時鐘,也可以說是計(jì)數(shù)器,其他大部分功能都是基于這個計(jì)數(shù)器設(shè)計(jì)的數(shù)字邏輯。 本文講的
    的頭像 發(fā)表于 05-26 15:15 ?1w次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>詳解</b>

    CW32實(shí)時時鐘RTC)介紹(

    實(shí)時時鐘RTC)是一個專用的計(jì)數(shù)器 / 定時器,可提供日歷信息,包括小時、分鐘、秒、日、月份、年份以及星期。RTC 具有兩個獨(dú)立鬧鐘,時間、日期可組合設(shè)定,可產(chǎn)生鬧鐘中斷,并通過引腳輸出;支持時間
    的頭像 發(fā)表于 05-26 17:07 ?1155次閱讀
    CW32實(shí)時<b class='flag-5'>時鐘</b>(<b class='flag-5'>RTC</b>)介紹(<b class='flag-5'>下</b>)

    一文看懂RTC實(shí)時時鐘

    RTC是個獨(dú)立的定時器。RTC模塊擁有一個連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)的軟件配置,可以提供時鐘日歷的功能。修改計(jì)數(shù)器的值可以重新設(shè)置當(dāng)前時間和
    的頭像 發(fā)表于 06-16 12:24 ?5050次閱讀
    一文看懂<b class='flag-5'>RTC</b>實(shí)時<b class='flag-5'>時鐘</b>

    RTC時鐘芯片+電池的應(yīng)用案例(一)

    實(shí)時時鐘,簡稱RTC,是廣泛應(yīng)用于電子產(chǎn)品的重要元器件。愛普生RTC實(shí)時時鐘具有高精度、高穩(wěn)定性和多功能的特點(diǎn),目前廣泛應(yīng)用于多個行業(yè)。下面
    的頭像 發(fā)表于 01-08 11:25 ?1251次閱讀
    <b class='flag-5'>RTC</b><b class='flag-5'>時鐘</b>芯片+電池的應(yīng)用案例(一)
    主站蜘蛛池模板: 99久久精品费精品国产一区二区 | se视频在线观看 | 青青导航 | 狠狠色噜噜狠狠狠狠 | 亚洲精品成人在线 | 国内激情自拍 | 欧美香蕉视频 | 香蕉成人国产精品免费看网站 | 免费男女| 亚州一级 | 日本成人免费网站 | 久久婷婷色一区二区三区 | 日本一区二区免费在线观看 | 2021久久精品99精品久久 | 国产黄色三级三级三级 | 免费性网站 | 奇米777me | 欧美人与牲动交xxxxbbbb | 午夜影院免费体验 | 黑人边吃奶边扎下面激情视频 | 中文免费观看视频网站 | 爱爱免费小视频 | 天天碰天天操 | 免费观看的黄色网址 | 午夜视频一区 | 日本色色图| 欧美天天 | 色综合久久天天综合绕观看 | 国产日韩欧美综合色视频在线 | 15—16女人毛片 | 乱肉情欲杂乱小说 | 国产午夜视频在线观看第四页 | 天天躁日日躁狠狠躁一级毛片 | 一区二区三区四区在线 | 黄色午夜影院 | 欧美一级欧美一级高清 | 中文字幕1区2区 | 中国性猛交xxxx乱大交 | 一级黄色日本 | 午夜视频色 | 日本free护士姓交 |