国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談4線電阻觸摸屏和stm32的接口實現(xiàn)

2009-12-31 09:43王曉忠
中國高新技術(shù)企業(yè) 2009年21期
關(guān)鍵詞:管腳低電平高電平

王 驊 王曉忠

摘要:很多LCD模塊都采用了電阻式觸摸屏,這些觸摸屏等效于將物理位置轉(zhuǎn)換為代表X、Y坐標(biāo)的電壓值的傳感器。通常由4線、5線、7線和8線觸摸屏來實現(xiàn),文章探討了如何用stm32系列MCU來驅(qū)動和讀寫4線電阻觸摸屏。

關(guān)鍵詞:4線電阻觸摸屏;STM32;接口實現(xiàn);電阻式觸摸屏

中圖分類號:TP391文獻(xiàn)標(biāo)識碼:A文章編號:1009-2374(2009)21-0046-02

觸摸屏作為一種最新的輸入設(shè)備,它是目前最簡單、方便、自然的一種人機(jī)交互方式。它賦予了多媒體以嶄新的面貌,是極富吸引力的全新多媒體交互設(shè)備。觸摸屏在我國的應(yīng)用范圍非常廣闊,主要是公共信息的查詢;如電信局、稅務(wù)局、銀行、電力等部門的業(yè)務(wù)查詢;城市街頭的信息查詢;此外應(yīng)用于領(lǐng)導(dǎo)辦公、工業(yè)控制、軍事指揮、電子游戲、點歌點菜、多媒體教學(xué)、房地產(chǎn)預(yù)售等。將來,觸摸屏還要走入家庭。

一、觸摸屏操作原理

電阻觸摸屏利用壓力感應(yīng)進(jìn)行控制。電阻觸摸屏的主要部分是一塊與顯示器表面非常配合的電阻薄膜屏,這是一種多層的復(fù)合薄膜,它以一層玻璃或硬塑料平板作為基層,表面涂有一層透明氧化金屬(透明的導(dǎo)電電阻)導(dǎo)電層,上面再蓋有一層外表面硬化處理、光滑防擦的塑料層,它的內(nèi)表面也涂有一層涂層,在他們之間有許多細(xì)小的(小于1/1000英寸)的透明隔離點把兩層導(dǎo)電層隔開絕緣。當(dāng)手指觸摸屏幕時,兩層導(dǎo)電層在觸摸點位置就有了接觸,電阻發(fā)生變化,在X和Y兩個方向上產(chǎn)生信號,然后送觸摸屏控制器。控制器偵測到這一接觸并計算出(X,Y)的位置,再根據(jù)模擬鼠標(biāo)的方式運作。這就是電阻技術(shù)觸摸屏的最基本的原理。

二、STM32的主要特性

2007年6月11日,半導(dǎo)體制造廠商意法半導(dǎo)體(ST)高調(diào)推出一個新的32位微控制器系列產(chǎn)品STM32。它采用的微處理器是ARM公司為要求高性能(1.25DhrystoneMIPS/MHz)、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計的ARMCortex-M3內(nèi)核。多達(dá)128KB的嵌入式閃存、20KB的RAM和豐富的外設(shè)接口,包括兩個12位模數(shù)轉(zhuǎn)換器(1微秒的轉(zhuǎn)換時間)、三個USART、兩個SPI(18MHz主/從控制器)、兩個I2C、三個16位定時器(每個定時器有4個輸入捕獲模塊/4個輸出比較器/4個PWM控制器),以及一個專門為電機(jī)控制向量驅(qū)動應(yīng)用設(shè)計的內(nèi)嵌死區(qū)時間控制器的6-PWM定時器、USB、CAN和7個DMA通道。內(nèi)置復(fù)位電路包括上電復(fù)位、掉電復(fù)位和電壓監(jiān)控器,以及一個可用作主時鐘的高精度工廠校準(zhǔn)的8MHz阻容振蕩器、一個使用外部晶振的4-16MHz振蕩器和兩個看門狗。

(一)用stm32檢測觸摸

Stm32系列mcu的I/O口可以編程配置成帶上拉電阻的模式,這個特點可以用來檢測有無觸摸。Stm32的GPIO管腳連接觸摸屏的Y+和X-,連接Y+的管腳配置成內(nèi)部電阻上拉模式,連接X-的管腳配置成推挽輸出低電平。如果Y+為高電平,那么就是沒有觸摸。如果Y+為低電平,觸摸屏被壓下。從高到低電平的跳變可以檢測觸摸,用到外部中斷。

(二)用stm32讀觸摸屏參數(shù)

分兩步讀取X,Y坐標(biāo)值。第一步,驅(qū)動Y+為高電平,Y-為低電平,接X+管腳配置成AD輸入模式,檢測X+的電壓,此電壓與驅(qū)動電壓的比例即Y坐標(biāo)和整個屏的高度比率。X坐標(biāo)的檢測也是同樣。驅(qū)動X+為高電平,X-為低電平,接Y+的管腳配置成AD輸入模式,檢測Y+的電壓,此電壓與驅(qū)動電壓的比例即X坐標(biāo)和整個屏的寬度比率。

Y=Ux/Vdrive*觸屏高度

X=Uy/Vdrive*觸屏寬度

三、軟件設(shè)計

(一)線電阻觸摸屏檢測軟件流程

軟件流程如圖4所示:

(二)Stm32配置AD程序

void ADC_Configuration(void)

{

ADC_InitTypeDef ADC_InitStructure;

ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;

ADC_InitStructure.ADC_ScanConvMode = ENABLE;

ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;

ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;

ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;

ADC_InitStructure.ADC_NbrOfChannel = 2;

ADC_Init(ADC1, &ADC_InitStructure);

/* ADC1 regular channel14 configuration */

ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5);

ADC_RegularChannelConfig(ADC1, ADC_Channel_11, 2, ADC_SampleTime_55Cycles5);

/* Enable ADC1 DMA */

ADC_DMACmd(ADC1, ENABLE);

/* Enable ADC1 external trigger */

ADC_ExternalTrigConvCmd(ADC1, ENABLE);

/* Enable ADC1 */

ADC_Cmd(ADC1, ENABLE);

/* Enable ADC1 reset calibaration register */

ADC_ResetCalibration(ADC1);

/* Check the end of ADC1 reset calibration register */

while(ADC_GetResetCalibrationStatus(ADC1));

/* Start ADC1 calibaration */

ADC_StartCalibration(ADC1);

/* Check the end of ADC1 calibration */

while(ADC_GetCalibrationStatus(ADC1));

}

四、結(jié)語

筆者設(shè)計采用基于 STM32的控制核心來實現(xiàn)和4線電阻觸摸屏接口,已經(jīng)成功的進(jìn)行了應(yīng)用,經(jīng)檢測可靠,而且實現(xiàn)比較容易。為系統(tǒng)中采用STM32微控制器和4線電阻觸摸屏的接口應(yīng)用提供了參考方案。

參考文獻(xiàn)

[1]RM0008 Reference manual,http://www.st.com,2008-02.

[2]STM3210E-EVAL firmware,http://www.st.com,2008-03.

[3]4-wire and 8-wire resistive touch screen controller using msp430,http://www.ti.com.

作者簡介:王驊(1978-),男,江蘇無錫人,無錫機(jī)電高等職業(yè)技術(shù)學(xué)校助教,研究方向:自動控制;王曉忠(1981-),男,江蘇無錫人,無錫機(jī)電高等職業(yè)技術(shù)學(xué)校助教,碩士,研究方向:控制工程。

猜你喜歡
管腳低電平高電平
一種基于FPGA的PWM防錯輸出控制電路
鐵道車輛高/低電平信號智能發(fā)生器設(shè)計
TS-03C全固態(tài)PDM中波發(fā)射機(jī)開關(guān)機(jī)控制電路原理及故障分析
2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
DM 50KW中波廣播發(fā)射機(jī)欠推動故障分析
PDM 1kW中波廣播發(fā)射機(jī)保護(hù)電路分析
基于圖像處理的異型電子元器件管腳偏移誤差檢測方法研究
CMOS數(shù)字IC管腳電容的估算與測量
15-MeV電子直線加速器的低電平系統(tǒng)
HC08芯片JVT測試方法的探究
屏东县| 简阳市| 南木林县| 榆树市| 肇源县| 静乐县| 永善县| 阜新市| 大姚县| 伊春市| 兴安县| 剑川县| 萨迦县| 建水县| 砚山县| 蓝田县| 台东县| 五家渠市| 麻阳| 昭苏县| 德格县| 马鞍山市| 富裕县| 景东| 衡阳市| 长治市| 双牌县| 运城市| 高陵县| 辉县市| 徐水县| 米易县| 海淀区| 南通市| 宣汉县| 星座| 托克托县| 长岛县| 岳阳县| 大埔县| 海宁市|