国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

MC9S08LL16 在水表氣表中的設計應用

發布時間:2010-10-12 19:43    發布者:techshare
關鍵詞: MC9S08LL16 , 氣表 , 水表
MC9S08LL 系列是飛思卡爾最新推出的內置LCD 驅動,極低功耗的單片機。 非常適合于在水表氣表中的設計應用。 本文介紹MC9S08LL16 在智能氣表的設計應用。由于水表與氣表的工作原理非常相似,本文也可適用于水表的設計。

MC908LL16的主要功能
MC908LL16 是Freescale 基于HCS08 核的8 位單片機。具有極低功耗,內置LCD 驅動及豐富的外圍接口。LL16 的主要特性如下:

· 低工作電壓1.8V-3.6V
· 最大總線頻率10Mhz
· 內置瑣頻環電路FLL
· 16K FLASH程序空間
· 2K字節RAM
· 2個16位定時器
· 實時時鐘計數器 TOD
· 8路12位A/D
· 模擬比較器
· 內置LCD驅動,可配置為8*24 或4*28模式
· 1個外部中斷和8個外部鍵盤中斷KBI
· 內部RC振蕩器看門狗
· 低電壓檢測電路LVI
· 1個SPI,I2C,SCI

MC9S08LL16的低功耗特性

在水表氣表中的應用中, 都是電池供電, 所以低功耗是設計中首要考慮的因素。系統功耗由兩部分組成: 單片機本身的功耗和外部電路的功耗。 由于外部電路的功耗基本上是固定的,因此選用低功耗的單片機至關重要。LL16是目前業界功耗最低的單片機之一。 單片機本身的功耗包括正常運行時的功耗和睡眠時的功耗。 在水表氣表中的應用中,單片機大部分時間工作于睡眠狀態, 因此睡眠時的電流至關重要, 睡眠時的功耗主要決定系統的平均功耗。下圖為LL16各種模式下的電流參數表:









從表中看出, 睡眠3(STOP3 )模式的電流為 400nA, 睡眠2(STOP2 )模式的電流為 350nA。由于STOP2 與STOP3功耗相差不大,但是STOP2下可以保持工作的外設很少,并且從STOP2喚醒的條件嚴格得多,從STOP2喚醒后,程序也會從復位處重新執行,且所有寄存器設置會回到默認狀態,在實際應用中沒有STOP3模式方便, 因此建議采用STOP3模式。

在水表氣表中的應用中, 進入睡眠時, LCD屏需要常亮, 外部32.768 kHz的晶振不能停振,因為TOD模塊采用外部32.768 kHz的晶振作為時鐘源實現軟時鐘。 把這些模塊的功耗考慮進去, 那么進入睡眠狀態時, LCD常亮, TOD模塊工作(定時喚醒MCU),外部32.768 kHz的晶振工作, MCU本身的功耗僅為2uA左右。

另外有一個參數對系統功耗的影響也非常重要, 即從睡眠模式喚醒的時間。 喚醒時間越短越好, 因為喚醒的過程中, 功耗會比較大。 LL16從睡眠3(STOP3 )模式喚醒的時間非常短, 只有6uS, 大大低于業界的大部分同類產品。

下面將以LL16在預付費IC卡氣表中的應用為例, 介紹各模塊的使用。

IC卡氣表的原理框圖  

下圖為預付費IC 卡氣表的原理框圖:  




電源電路

氣表和水表采用電池供電,氣表一般采用堿性電池或鋰電池。 如果采用堿性電池,一般使用四節。 因此電池電壓需經LDO降壓到3V供給MCU。 由于IC卡工作電壓有5V或3V的,如果采用工作電壓為5V的IC卡, 電池電壓需經另一LDO降壓到5V供給IC卡。

在水表普遍采用鋰電池供電, 鋰電池電壓可以不需需經LDO降壓直接供給MCU,因為LL16工作電壓范圍為1.8V-3.6V.


晶振電路

LL16內部有瑣頻環電路(FLL)可以把MCU運行的總線頻率倍頻上去, 最高可以倍頻到20Mhz。 同時LL16內部有RC振蕩器, 校準后的精度可以達到±2%(±2%為全溫度范圍的最大誤差。常溫下該精度為±0.2%)。 由于在大部分設計中使用軟時鐘而省去外部的專用RTC芯片以節省時間成本, 所以選擇外接32.768k的晶振,以保證時鐘的精度。時鐘模塊的初始化程序如下:

void ICS_init(void)

{
ICSC1 = 0x00;
ICSC2 = 0x47;
ICSSC_DRST_DRS=0;
while((ICSSC & 0xC0) != 0x00) { }
}


EEPROM接口電路

由于在氣表水表應用中,需要不斷地保存信息,例如:時間,當前用氣/水量,剩余用氣/水量等。因此需要EEPROM來保存這些數據。LL16的FLASH可以自我擦寫,可以用來模擬EEPROM. 需要注意的是LL16 FLASH的擦寫次數有限,常溫下為10萬次. 如果需要更多的擦寫次數, 需要外接EEPROM。下面以外接24LC64為例介紹它的接口應用, 硬件接口電路如下:



為了降低功耗, 24LC64的電源通過I/O口 PTB6控制。當需要讀寫24LC64時,PTB6輸出高電平, 給24LC64供電,否則輸出低電平, 關閉24LC64的電源。

IC卡接口電路

在氣表應用中,根據存儲介質的不同有CPU卡,IC卡,RF卡等。由于IC卡具有保密性強, 數據容量大,使用方便, 成本低等特點, 因此在預付費卡表普遍應用。 目前普遍采用的是SLE442。 這里以SLE4442為例,介紹IC卡如何與LL16進行接口及操作。SLE4442內置256字, 具有寫保護和安全代碼可編程等特點。 由于LL16工作在3V, 如果采用5V工作的SLE4442,需要電平轉換。下圖為LL16 與5V工作的SLE4442的接口電路圖, 如果采用3V工作的SLE442卡, 則可省去電平轉換電路。




PTA1,A2與數據線DATA相連, PTA0與時鐘線CLK相連, PTC7與復位腳RST相連。 PTA3控制SLE4442的電源。 對SLE4442的操作主要包括讀寫SLE4442的主存儲器, 保護區存儲器和安全區存儲器。 對SLE4442寫操作之前,必須先進行安全認證。 如果連續三次認證失敗, 則IC卡被作廢, 再也無法使用。PTA5,A4用于插卡檢測, 檢測IC卡是否插入卡座。 可以采用定時查詢的方式或中斷方式。

下面以讀主存儲器起始地址為0x20的3個字節為例說明它的編程:


/************* main function ************/
void main (void)
{
unsigned char buffer;
//read main memory at address 0x20. 21, 22, and stored at buffer
Read_4442_main_memory(0x20, 3, buffer);
}
// read main memory function
void Read_4442_main_memory(unsigned char Address, unsigned char number, unsigned
char *data)
{
unsigned char command;
command[0] = 0x30;
command = Address;
send_SLE4442_Command(command);
send_SLE4442_Data(number, data);
}

電池電壓檢測

由于氣表采用電池供電, 因此需對電池電壓進行監測, 在電池耗盡之前, 報警提醒用戶更換電池。 雖然LL16內部有掉電檢測電路LVI, 但使能該模塊將消耗較大的電流, 所以不宜采用。 可以利用LL16內部模擬比較器或A/D模塊監測電池電壓,A/D模塊或內部模擬比較器會消耗一定的功耗, 為了降低功耗, 可以采用定時檢測的方法, 因為電池電壓是緩慢下降的。

在水表中, 如果采用鋰電池直接供電, 這里介紹一種簡便的方法用于電池電壓檢測:在LL16的內部集成一個1.17V的帶隙基準電壓,此帶隙基準電壓內部連接到ADC的輸入通道AD27; 因此可以不需要任何外部電路,AD模塊只需定時采樣此基準電壓,由此可換算出電池電壓。

這種方法的好處是,不需要外部任何器件, 既節省成本又節省空間,而且可以獲知當前準確的電池電壓。它的原理如下: AD的參考電壓設為VDD, VDD即為電池電壓, 如果AD設為12bit模式 那么:帶隙基準電壓的AD值(AD27)=(1.17V / VDD) *4096 = (1.17V/ 電池電壓) * 4096;所以: 電池電壓= (4096 / 帶隙基準電壓的AD值(AD27)) * 1.17 (V)

電機驅動電路

在氣表應用中,采用直流電機來開關閥門。 其驅動電路普遍采用H橋電路, 如下圖。此電路成本低,可靠性高。

當PTC3,PTC4同時輸出高電平或低電平時, 電機不工作。 當PTC3輸出高,PTC4輸出低時, 電機向一個方向轉動。 當PTC3輸出高, PTC4輸出低時, 電機向反方向轉動。 PTC2用作電機到位檢測。




軟時鐘的實現

由于在氣表水表應用中, 對時鐘的要求并不是特別精確, 因此可以利用LL16的TOD模塊方便地實現軟時鐘, 從而省去外部的實時時鐘芯片, 降低系統成本。 TOD模塊使用非常簡單,下圖為它的內部結構圖:



TOD的時鐘源有三個, 即內倍的1 kHz RC振蕩器, ICSIRCK時鐘及外部晶振時鐘。考慮到精度因素, 所以選用外部32.768k晶振作為時鐘源。 TOD模塊對時鐘源進行計數,可產生1S或1/4S中斷。 因此可利用這1秒鐘一次的中斷實現軟時鐘。 同時此中斷把CPU從睡眠模式喚醒, 用來查詢IC 卡座, 流量脈沖計數,以及電池電壓檢

測等。TOD的初始化如下:

void TOD_init(void)
{
TODC = 0x11;
TODC_TODEN =1;
TODSC=0X08;
}
TOD的中斷服務程序:
void interrupt VectorNumber_Vtod RTC_ISR(void)
{
TODSC_SECF = 1; // clear 1s interrupt flag
Clock_processing();
}

TOD 的中斷服務程序:
void interrupt VectorNumber_Vtod RTC_ISR(void)
{
TODSC_SECF = 1; // clear 1s interrupt flag
Clock_processing();
}  


LCD 驅動

LL16內部有LCD驅動模塊, 可配置為24*8,或28*4。 LCD與I/O復用, 多余的段可設為普通I/O。注意,所有和LCD驅動復用的GPIO,在作為I/O功能使用時,其輸出模式為開漏,需要外接上拉電阻

LCD驅動是LL16的一大特色, 具有許多優越的性能。

· 低功耗, LCD模塊僅消耗900nA的電流
· 可配置為24*8即8COM端驅動模式, 從而節省更多的I/O口
· COM 和SEGMENT可隨意配置, 方便布線, 從而提高EMC性能。
· 具有頻率可調的閃爍功能, MCU在睡眠模式仍然工作, 從而達到更省電的目的。
· 內置電荷泵, 產生LCD驅動所需的偏置電壓
· 內置可調的穩壓電壓源, 此穩壓電壓源可作為LCD的輸入電壓, 通過內置電荷泵, 產生LCD驅動所需的偏置電壓。 當電池電壓降低時, 可保證LCD的對比度不受影響, 這一點對水表設計非常有用。
· LCD的輸入電壓有多個選擇, 可支持3V或5V的LCD屏

LCD驅動模塊的內部結構圖如下:




LCD 的外部電路非常簡單,只需幾個電容, 見下圖。  



如果采用四節干電池供電, 由于6V的電源電壓經過LDO產生穩定的3V作為MCU的電源, 所以LCD的輸入電源可選為VLL3=VDD。

LCD驅動模塊的初始化如下:

void LCD_init(void)
{
LCDRVC = 0x00;
LCDSUPPLY = 0x85;
LCDC1=0X00;
LCDC0 = 0xA3;
}

如果采用鋰電池直接供給MCU, LCD的輸入電源可選為來自于MCU內部的穩壓電源,這樣的好處是, 對比度不會因為電池電壓的降低而受影響。
LCD驅動模塊的初始化如下:

void LCD_init(void)
{
LCDRVC = 0x80;
LCDSUPPLY = 0x87;
LCDC1=0X00;
LCDC0 = 0xA3;
}

流量脈沖檢測:

目前普遍采用雙干簧管進行流量檢測,其缺點是沒有霍爾傳感器穩定。 但霍爾傳感器功耗相對要大,成本要高。 隨著成本的逐漸減低,將來霍爾傳感器有取代雙干簧管的趨勢。 雙干簧管把流量信號轉換成脈沖信號, 因此利用I/O口可以很方便地檢測流量脈沖信號。 為了降低功耗, 檢測電路的電源通過IO口進行控制。 由于氣/水表的流量脈沖信號之間的間隔比較長, 因此可以采用定時查詢來計數脈沖個數, 也可以接到鍵盤中斷口利用中斷方式檢測。

下圖為接口電路圖。其中:PTB7 用做斷線檢測。 PTC0,PTC1用做流量脈沖的檢測。


蜂鳴器電路

蜂鳴器電路如下:


結束語

由于LL16具有超低功耗, 內置LCD驅動及豐富的外圍接口, 性價比高等特點, 因此非常適合于在水表氣表中的設計應用。在本參考設計中, 系統功耗在LCD常亮的狀態下, 大約為4.5uA。 在水表氣表設計中, 如何降低功耗,是設計中的要點。
本文地址:http://m.qingdxww.cn/thread-31869-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本一区二区三区在线播放 | 亚洲欧洲在线视频 | 婷婷射丁香 | 国产亚洲欧美另类一区二区三区 | 国产在线观看91精品2022 | 久久99国产综合精品 | 99爱视频精品免视看 | 日韩区 | 欧美成人一区二区三区在线视频 | 日韩黄毛片 | 91热视频在线观看 | 亚洲精品国产精品国自产观看 | 国产成人最新毛片基地 | 久久精品一级 | 91精品视品在线播放 | 精品久草| 亚洲日本乱码在线观看 | 四虎影视永久免费观看 | 欧美视频中文字幕 | 91在线看视频 | 亚洲日日干| 免费观看又黄又刺激的视频网站 | 免费不卡视频 | 亚洲性爰视频 | 四虎www免费人成 | 一级一级特黄女人精品毛片 | 99视频在线观看高清 | 天天干天天操天天透 | 久久黄色毛片 | 在线 色| 欧美3p在线观看一区二区三区 | 久草精品在线观看 | 尹人香蕉网在线观看视频 | 亚洲欧洲日产国码二区在线 | 午夜精品久久久久 | 极品美女一区二区三区 | 9999av| 日韩免费精品一级毛片 | 中文字幕在线播 | 日韩亚洲人成网站 | 色老头综合免费视频 |