以HY16F198B實(shí)現(xiàn)觸控溫度計應(yīng)用設(shè)計
1. 內(nèi)容簡介
本文引用地址:http://www.ex-cimer.com/article/201610/311117.htm溫度的量測應(yīng)用非常的廣泛,從農(nóng)業(yè)上的氣溫觀測,及日常防疫的體溫量測至工業(yè)上的半導(dǎo)體制程,溫度都是相當(dāng)重要的一個指標(biāo)及依據(jù)。本文主要是介紹HYCON HY16F Series芯片在溫度量測應(yīng)用,并透過Touch Key的界面進(jìn)行操作。由于HY16F198B芯片內(nèi)部集成高精度∑△ADC,且ADC輸出頻率最快可以到達(dá)10kHz,并搭配內(nèi)部LCD驅(qū)動完成顯示。HY16F198B用于溫度量測,不需外接的感測組件,達(dá)到周邊電路簡單且省電的應(yīng)用.
2. 原理說明
2.1. 量測原理
本應(yīng)用的溫度量測組件是采用,IC內(nèi)部的絕對溫度傳感器TPS,絕對溫度傳感器由二極管(BJT)組成,其電壓信號對溫度的變化為一通過0°K曲線,其具以下特色溫度傳感器在環(huán)境溫度為0°K時期輸出的電壓值VTPS@0°K =0V,透過測量方式可使得模擬數(shù)字轉(zhuǎn)換器ADC的偏移電壓(VADC-OFFSET)與BJT之不對稱性(IS1≠IS2)自動抵銷。校正溫度僅需單點(diǎn)校正。
HY16F啟用時,TPS的功能隨即被自動啟用。
在同一溫度TA(℃)下,量測到VTPS0與VTPS1的數(shù)值后,將兩數(shù)相加并取平均值即可求得在溫度TA下測得TPS相對應(yīng)的電壓值VTPS@TA。
TPS的輸出電壓VTPS對溫度變化為一線性曲線,故可推倒得出其增益值GTPS(或稱斜率)
TPS增益公式
2.2. 控制芯片
單片機(jī)簡介:HY16F系列32位高性能Flash單片機(jī)(HY16F198B)
HY16F系列32位高性能Flash單片機(jī)(HY16F198B)
特點(diǎn)說明:
(1)采用最新Andes 32位CPU核心N801處理器。
(2)電壓操作范圍2.2~3.6V,以及-40℃~85℃工作溫度范圍。
(3)支持外部16MHz石英震蕩器或內(nèi)部16MHz高精度RC震蕩器.
(3.1)運(yùn)行模式 0.6mA@2MHz/2
(3.2)待機(jī)模式 5uA@ LSRC=34KHz+IDLE Mode
(3.3)休眠模式 2.5uA
(4)程序內(nèi)存64KB Flash ROM
(5)數(shù)據(jù)存儲器8KB SRAM
(6)擁有BOR and WDT功能,可防止CPU死機(jī)。
(7)24-bit高精準(zhǔn)度ΣΔADC模擬數(shù)字轉(zhuǎn)換器
(7.1)內(nèi)置PGA (Programmable Gain Amplifier)最高可達(dá)128倍放大。
(7.2)內(nèi)置溫度傳感器TPS。
(8)超低輸入噪聲運(yùn)算放大器OPAMP。
(9)16-bit Timer A
(10)16-bit Timer B模塊俱PWM波形產(chǎn)生功能
(11)16-bit Timer C 模塊俱數(shù)字Capture/Compare 功能
(12)硬件串行通訊SPI模塊
(13)硬件串行通訊I2C模塊
(14)硬件串行通訊UART模塊
(15)硬件RTC時鐘功能模塊
(16)硬件Touch KEY功能模塊
(17)硬件 LCD Driver 4x36,6x34
3. 系統(tǒng)設(shè)計
3.1. 硬件說明
使用HY16F198B對于觸控溫度計的應(yīng)用,整體電路就只需HY16F開發(fā)板上之Touch Key及LCD顯示溫度.
(A) MCU:HY16F198B
(B) 顯示方式: HY16F198B內(nèi)部硬件驅(qū)動4x36 LCD (LCD Driver Segment 4X36)
(C) 電源電路:5.0V轉(zhuǎn)3.3V電源系統(tǒng)
(D) 模擬感測模塊:內(nèi)部ADC
(E) 在線刻錄與ICE鏈接電路,透過EDM的連接,可支持在線刻錄模擬.
并擁有強(qiáng)大的C平臺IDE以及HYCON模擬軟件分析工具與GUI等支持.
3.2. 功能說明
3.2.1. 溫度設(shè)定
TPS量測圖: ADC內(nèi)部的PGA放大1倍,ADGN放大1倍,參考電壓由VDDA –VSS供給,則ΔVR_I=1.2V
TPS初始化設(shè)置與計算方式如下操作:
啟用ADC則TPS的功能隨即被自動啟用。
本范例程序只使用VTSP1 / VTSN1進(jìn)行TPS量測.
測量TSP0 / TSN0 時,ADINP[3:0]設(shè)置<0110>且ADINN[3:0]設(shè)置<0111>
測量TSP1 / TSN1 時,ADINP[3:0]設(shè)置<0111>且ADINN[3:0]設(shè)置<0110>
l 精準(zhǔn)的溫度校正(搭配Copper方式)進(jìn)行量測步驟:
STEP1:
測量得VTSP0 / VTSN0與VTSP1 / VTSN1的數(shù)值后,在同一溫度TA(℃)下,量測到VTPS0與VTPS1的ADC數(shù)值.
STEP2:
將兩數(shù)相加并取平均值即可求得在溫度TA(℃)下測得TPS相對應(yīng)的ADC數(shù)值VTPS@TA)
STEP3:
再帶回TPS增益公式,計算GTPS.
STEP4:
最后將ADC平均值(VTS@Ta)除以GTPS,求得實(shí)際溫度(代入公式)
實(shí)際溫度 = (VTS@Ta / GTPS) – (273.15+Toffset)
3.2.2. 觸控設(shè)定
內(nèi)建硬件觸控模塊(使用模擬比較器方塊)
觸控原理說明(程控方式):
STEP1: 將CMP的CPIS(短路),讓CH1上的Cref通過RLO接到VSS進(jìn)行放電.
STEP2: 啟動CMP,預(yù)設(shè)CMPO=High,并且讓Timer B開始計數(shù).
STEP3: 啟動Non-over lap,使VDD對Touch Key(CL1)充電,sharing to CH1,使CH1電位慢慢提升,當(dāng)提升到比較點(diǎn)RLO電位時,比較器會轉(zhuǎn)態(tài)(CMPO=Low).
STEP4: 關(guān)閉Timer B計數(shù)功能(透過CMPO Flag判斷關(guān)閉 Timer B).
STEP5: 紀(jì)錄Timer B count,并判斷是否大于門坎值(Yes表示有按鍵).
STEP6: 重復(fù)放電到充電的循環(huán),依序掃描各Touch Key(CL1~CL4)
Note:
Cref = 100nF
Charge sharing power= 3V
Non-overlap clock = TBCLK=HAO/4=500KHz
Timer B Enable Flag is CMPO.
RLO=4/16*VDD=0.75V
CPUCLK=HAO;
Comparator: low power
評論