基于W78E54B單片機電話計費器的設(shè)計 (圖)
引言
公用電話計費器是日常生活中比較常見的。目前的電話計費器不能較好地適應(yīng)電信系統(tǒng)的折價時間,本計費器采用人工手動計費器,可隨時滿足折價時間的改變。同時該計費器記錄準確,并可以存儲200條話費記錄;可以通過電話機重新設(shè)置時間、區(qū)號、費率等,同時可以人工手動實現(xiàn)半價和全價轉(zhuǎn)換;功耗低,體積小,成本低。 系統(tǒng)設(shè)計
該系統(tǒng)由w78e54b單片機、摘機檢測電路、dtmf解碼電路、鍵盤、led顯示器組成,原理框圖如圖1所示。
其中w78e54b單片機主要完成話費的計算、存儲等功能。摘機檢測電路完成對系統(tǒng)的摘機、振鈴、通話、掛機等狀態(tài)的檢測。dtmf雙音多頻電路采用cmd8870實現(xiàn)雙音多頻信號的解碼。系統(tǒng)通過查詢、復(fù)位、計費3個鍵實現(xiàn)人機接口,led顯示器采用2塊相同的12位led顯示屏,分別安裝在計費器的兩側(cè),用于對用戶和顧客的話費顯示。單片機和dtmf的接口電路如圖2所示。
當(dāng)有電話撥號時,由lm567構(gòu)成的鎖相環(huán)檢測到并使輸出引腳變低,該信號直接送到單片機的p2.0口,單片機通過p0.2口使能cmd8870芯片解碼輸出,q1至q4分別輸出到單片機的p0.3至p0.7,同時單片機通過std口檢測下一個撥號的到來,以便及時接收。cmd8870芯片解碼輸出如表1所示。
本系統(tǒng)的軟件框圖如圖3所示。
當(dāng)電話被提機,有反極信號,單片機啟動定時器開始按秒或按分自動計費。無反極信號,15秒自動進入計費或按下計費鍵馬上進入自動計費。
當(dāng)有任何一個計費器按鍵按下的時間超過2秒,則系統(tǒng)進入設(shè)置狀態(tài)。當(dāng)不足2秒的時候進入相應(yīng)的按鍵動作,其各個按鍵相應(yīng)動作如下。
復(fù)位鍵:當(dāng)完成一次通話后,計費器進入語音提示狀態(tài),收費完畢,按下復(fù)位鍵,停止語音,并可重新計費。
查詢鍵:在電話處于掛機狀態(tài)下,可以通過此鍵查詢最近的通話記錄,包括序號、電話號碼、通話時間以及金額等。
同時按下查詢和計費鍵的時候?qū)崿F(xiàn)全價和半價的計費轉(zhuǎn)換。系統(tǒng)開始為全價計費,同時按下這兩個鍵為半價計費。
當(dāng)按下上述任何一個鍵的時間超過2秒,則可以通過電話的按鍵設(shè)置時間、區(qū)號和費率等。
設(shè)置主要是用戶來設(shè)置通話費率和時間等參數(shù)。當(dāng)電話掛機狀態(tài),可以通過電話的按鍵來設(shè)置一些費率、區(qū)號,例如:本地的長途區(qū)號設(shè)置命令格式,格式為*1+aaaa+#,其中*1為命令編號,aaaa為本地區(qū)號,如果本地區(qū)號不足4位,用“*”來補齊,#為命令結(jié)束符。
在設(shè)置費率中,fff是指設(shè)置的費率,例如費率為0.60元/分,則fff就是指060這3個數(shù)字。同樣其他的設(shè)置如表2所示。結(jié)語
本計費器能實現(xiàn)精確計費,雙音頻信號接收準確,可用于各個公共電話站等地方的雙音多頻電話的計費。