MC9S08LL16 在水表氣表中的設(shè)計(jì)應(yīng)用
IC卡氣表的原理框圖
下圖為預(yù)付費(fèi)IC 卡氣表的原理框圖:
電源電路
氣表和水表采用電池供電,氣表一般采用堿性電池或鋰電池。 如果采用堿性電池,一般使用四節(jié)。 因此電池電壓需經(jīng)LDO降壓到3V供給MCU。 由于IC卡工作電壓有5V或3V的,如果采用工作電壓為5V的IC卡, 電池電壓需經(jīng)另一LDO降壓到5V供給IC卡。
在水表普遍采用鋰電池供電, 鋰電池電壓可以不需需經(jīng)LDO降壓直接供給MCU,因?yàn)長L16工作電壓范圍為1.8V-3.6V.
晶振電路
LL16內(nèi)部有瑣頻環(huán)電路(FLL)可以把MCU運(yùn)行的總線頻率倍頻上去, 最高可以倍頻到20Mhz。 同時(shí)LL16內(nèi)部有RC振蕩器, 校準(zhǔn)后的精度可以達(dá)到±2%(±2%為全溫度范圍的最大誤差。常溫下該精度為±0.2%)。 由于在大部分設(shè)計(jì)中使用軟時(shí)鐘而省去外部的專用RTC芯片以節(jié)省時(shí)間成本, 所以選擇外接32.768k的晶振,以保證時(shí)鐘的精度。時(shí)鐘模塊的初始化程序如下:
void ICS_init(void)
{
ICSC1 = 0x00;
ICSC2 = 0x47;
ICSSC_DRST_DRS=0;
while((ICSSC & 0xC0) != 0x00) { }
}
EEPROM接口電路
由于在氣表水表應(yīng)用中,需要不斷地保存信息,例如:時(shí)間,當(dāng)前用氣/水量,剩余用氣/水量等。因此需要EEPROM來保存這些數(shù)據(jù)。LL16的FLASH可以自我擦寫,可以用來模擬EEPROM. 需要注意的是LL16 FLASH的擦寫次數(shù)有限,常溫下為10萬次. 如果需要更多的擦寫次數(shù), 需要外接EEPROM。下面以外接24LC64為例介紹它的接口應(yīng)用, 硬件接口電路如下:
為了降低功耗, 24LC64的電源通過I/O口 PTB6控制。當(dāng)需要讀寫24LC64時(shí),PTB6輸出高電平, 給24LC64供電,否則輸出低電平, 關(guān)閉24LC64的電源。
IC卡接口電路
在氣表應(yīng)用中,根據(jù)存儲介質(zhì)的不同有CPU卡,IC卡,RF卡等。由于IC卡具有保密性強(qiáng), 數(shù)據(jù)容量大,使用方便, 成本低等特點(diǎn), 因此在預(yù)付費(fèi)卡表普遍應(yīng)用。 目前普遍采用的是SLE442。 這里以SLE4442為例,介紹IC卡如何與LL16進(jìn)行接口及操作。SLE4442內(nèi)置256字, 具有寫保護(hù)和安全代碼可編程等特點(diǎn)。 由于LL16工作在3V, 如果采用5V工作的SLE4442,需要電平轉(zhuǎn)換。下圖為LL16 與5V工作的SLE4442的接口電路圖, 如果采用3V工作的SLE442卡, 則可省去電平轉(zhuǎn)換電路。
PTA1,A2與數(shù)據(jù)線DATA相連, PTA0與時(shí)鐘線CLK相連,PTC7與復(fù)位腳RST相連。 PTA3控制SLE4442的電源。 對SLE4442的操作主要包括讀寫SLE4442的主存儲器, 保護(hù)區(qū)存儲器和安全區(qū)存儲器。 對SLE4442寫操作之前,必須先進(jìn)行安全認(rèn)證。 如果連續(xù)三次認(rèn)證失敗, 則IC卡被作廢, 再也無法使用。PTA5,A4用于插卡檢測, 檢測IC卡是否插入卡座。 可以采用定時(shí)查詢的方式或中斷方式。
評論