基于MSM7512B的單片Modem遠(yuǎn)程抄表系統(tǒng)設(shè)計(jì)
摘 要:本文介紹了AT90S2313單片機(jī)及單片Modem芯片7512B的性能特點(diǎn),并設(shè)計(jì)出基于MSM7512B單片Modem遠(yuǎn)程抄表系統(tǒng),給出了系統(tǒng)各功能單元的電路設(shè)計(jì)原理圖,以及MSM7512B以被叫方式與標(biāo)準(zhǔn)Modem按照ITU-T V.23協(xié)議建立連接的過程及程序框圖。
關(guān)鍵詞:AT90S2313;MSM7512B;遠(yuǎn)程抄表;協(xié)議
引言
近幾年出現(xiàn)的磁卡式、電卡式和I C卡式燃?xì)獗?,可以對用氣大戶的燃?xì)獗韺?shí)現(xiàn)自動化管理。但是,要大規(guī)模推廣應(yīng)用必將對現(xiàn)有的機(jī)械式燃?xì)獗磉M(jìn)行徹底改造,這將導(dǎo)致一次性投資過大。為此,本文設(shè)計(jì)了基于MSM7512B調(diào)制解調(diào)器芯片遠(yuǎn)程抄表系統(tǒng)。該系統(tǒng)同樣也適用于電度表和水表的應(yīng)用場合,其系統(tǒng)結(jié)構(gòu)框圖如圖1所示。它以電話網(wǎng)為交換媒介,可以對各個(gè)表站的煤氣表數(shù)據(jù)進(jìn)行遠(yuǎn)程采集,對收到的數(shù)據(jù)進(jìn)行存儲、查詢及打印等處理。上位機(jī)是一臺PC機(jī),采用VB開發(fā)環(huán)境,通過標(biāo)準(zhǔn)Modem來實(shí)現(xiàn)通信;下位機(jī)系統(tǒng)可分為三部分:單片機(jī)單元、計(jì)數(shù)接口及電壓檢測單元以及調(diào)制解調(diào)單元。
單片機(jī)單元
本系統(tǒng)中單片機(jī)采用Atmel公司的AVR系列單片機(jī)AT90S2313。其程序和數(shù)據(jù)分別存儲,總線獨(dú)立。為了提高目標(biāo)代碼的性能優(yōu)化功耗設(shè)計(jì),AVR單片機(jī)采用精簡指令RISC結(jié)構(gòu)和快速寄存器文件。程序執(zhí)行單級流水線,一改以往傳統(tǒng)累加器結(jié)構(gòu)代碼效率低、運(yùn)算能力低的缺點(diǎn)。此外,AT90S2313無堆棧,可將堆棧置于數(shù)據(jù)存儲區(qū),將棧底指針設(shè)在SRAM區(qū)最高地址處。
計(jì)數(shù)接口及電壓檢測單元
計(jì)數(shù)接口對脈沖源進(jìn)行計(jì)數(shù),其電路原理如圖2所示,在齒輪式天燃?xì)獗砩习惭b干簧管,平時(shí)干簧管張開,2313的外部中斷管腳狀態(tài)為高電平,當(dāng)齒輪旋轉(zhuǎn)一周時(shí),磁鋼使干簧管吸合,外部中斷管腳變低,這樣產(chǎn)生一個(gè)低電平中斷,單片機(jī)開始累加一次脈沖。當(dāng)磁鋼使干簧管吸合時(shí),如果用戶不繼續(xù)使用燃?xì)?,那么磁鋼將一直吸合干簧管,外部中斷管腳一直為低電平,這樣將使計(jì)數(shù)單元重復(fù)計(jì)數(shù)。為了使干簧管吸合時(shí),外部中斷管腳不一直為低電平,應(yīng)用微分電路,即使干簧管一直吸合時(shí),其輸出為一個(gè)低電平脈沖。
由于系統(tǒng)的下位機(jī)工作于燃?xì)猬F(xiàn)場,它的電源不能采用市電整流獲得。為了安全,電源采用普通5號電池,這樣就對系統(tǒng)的功耗要求很嚴(yán)格,平時(shí)應(yīng)使單片機(jī)處于睡眠狀態(tài),發(fā)生中斷事件后,喚醒單片機(jī)。同時(shí)由于電池電壓下降到一定程度單片機(jī)就無法正常工作,因此,還必須對電源進(jìn)行不斷監(jiān)測。利用AVR單片機(jī)中的比較單元,對電源電壓進(jìn)行監(jiān)測。電路原理如圖3所示。AT90S2313內(nèi)部帶有電壓比較單元,在監(jiān)測電壓時(shí),使管腳PB2輸出為5V高電平電源電壓,管腳PB1被1.8V的穩(wěn)壓管鉗位在1.8V。用管腳PB0監(jiān)測PB2的分壓電壓。電源正常時(shí),PB1的電壓低于PB0的電壓,當(dāng)Vcc下降時(shí),PB0的電位隨之下降,一旦PB1的電壓高于PB0的電壓時(shí),產(chǎn)生電壓比較中斷標(biāo)志位,通過電壓比較中斷,控制蜂鳴器報(bào)警。
調(diào)制解調(diào)單元
單片Modem是該系統(tǒng)的核心部分,其主要功能是與上位機(jī)進(jìn)行呼叫連接和數(shù)據(jù)交換。被叫部分電路原理圖如圖4所示。該部分應(yīng)用了OKI公司的單片F(xiàn)SK調(diào)制解調(diào)器MSM7512B,它遵守ITU_T V.23協(xié)議,由單電源供電,具有低功耗掉電模式,模擬驅(qū)動能力可以直接驅(qū)動600 通信電路。
圖5是按照V.23協(xié)議,在公用電話網(wǎng)中建立連接具體過程的時(shí)序描述。
7512B有三種工作模式。一種為1200bps半雙工模式,發(fā)送和接收的速率均為1200bps,數(shù)字0(SPACE信號)對應(yīng)著2100Hz,數(shù)字1(MARK信號)對應(yīng)1300Hz。第二種為1200bps收/75bps發(fā)模式,發(fā)送的速率為75bps,數(shù)字0(SPACE信號)對應(yīng)著450Hz,數(shù)字1(MARK信號)對應(yīng)390Hz;接收的速率為1200bps,數(shù)字0(SPACE信號)對應(yīng)著2100Hz,數(shù)字1(MARK信號)對應(yīng)1300Hz。另外,7512B還可工作于掉電方式,此時(shí)它的功耗只有0.1W。本系統(tǒng)中,7512B是作為被叫Modem來建立連接的。由呼叫時(shí)序可知,上位機(jī)必須檢測到7512B發(fā)送的2100Hz應(yīng)答音,為此要求7512B工作在1200bps半雙工模式。在該模式中,7512B無法檢測到低波段的MARK,也無法接收標(biāo)準(zhǔn)Modem發(fā)送的數(shù)據(jù),只能工作在單向發(fā)送狀態(tài)。圖6給出了2313接收到振鈴信號時(shí)的作為被叫Modem應(yīng)答中斷服務(wù)程序框圖。
結(jié)語
自該系統(tǒng)應(yīng)用于機(jī)械燃?xì)獗碇幸詠恚阅芊€(wěn)定,運(yùn)行狀況良好。利用單片機(jī)控制Modem芯片進(jìn)行遠(yuǎn)程數(shù)據(jù)傳輸,在數(shù)據(jù)量不大、傳輸速率要求不高的場合,應(yīng)用十分方便?!?br/>參考文獻(xiàn)
1 OKI.MSM7512B Databook.1998
2 OKI.MSM7510/7512B Application notes.1998
3 OKI Semiconductor Datasheet Collection. OKI Electric Industry Co.Ltd.2000
4 宋國強(qiáng)主編. AVR單片機(jī)原理及應(yīng)用.北京航空航天大學(xué)出版社,1999
電度表相關(guān)文章:電度表原理
評論