摘? 要:?介紹一種以AT89C52單片機為核心,采用Strata系列大容量閃速存儲器作緩存的程控交換機呼叫信息緩沖系統(tǒng),。該系統(tǒng)實現(xiàn)了多任務方式下的串行數(shù)據(jù)接收,、緩存和讀出,其軟串口用于信息的實時接收和波特率的自動識別,數(shù)據(jù)讀出速度達460kbps,并設計了規(guī)范的命令集,。
關鍵詞: 呼叫信息? 緩沖? 實時? 多任務? 閃速存儲器
?
程控交換機生成的電話呼叫信息一般通過其標準的串行接口輸出,電話計費系統(tǒng)軟件可以用計算機直接從交換機接收呼叫信息,。但呼叫信息的輸出是隨機的,取決于交換機支持的網(wǎng)上分機電話的使用狀態(tài)。為防止信息丟失,計算機系統(tǒng)必須保持全天二十四小時連續(xù)工作,。程控交換機話單自動存儲器的設計與應用,一定程度上提高了計費工作的靈活性,降低了系統(tǒng)的運行成本[1],。但早期系統(tǒng)或是不具備多任務工作特性,使用不便;或是采用靜態(tài)RAM作緩存,導致數(shù)據(jù)存儲可靠性不高,系統(tǒng)功耗較大;而且系統(tǒng)功能設計較低且不規(guī)范,靈活性較差。
本文以AT89C52單片機為核心,采用Intel Strata系列閃速存儲器作緩存,設計開發(fā)的新一代程控交換機呼叫信息緩沖系統(tǒng),用于串行數(shù)據(jù)的接收,、緩存和讀出,具有多任務工作特性,而且實時性好,讀出速度快,數(shù)據(jù)存儲可靠性高,使用靈活方便,。
1 系統(tǒng)的基本性能要求
(1) 實時緩沖能力
在緩存空間允許和系統(tǒng)供電正常的條件下,保證呼叫信息的實時接收和緩存。設計采用軟串口接收數(shù)據(jù),波特率為300×2nbps(其中n=0~6),并實現(xiàn)對交換機輸出波特率的自動識別與跟蹤,。
(2) 大容量緩存,、配置靈活
支持緩存空間高達16MB,并可在1~16MB之間進行剪裁配置。支持空閑緩存容量的動態(tài)查詢和聲光報警功能,使緩存信息能被及時讀出,。
(3) 支持一組規(guī)范的命令
定義并支持一組規(guī)范的命令,實現(xiàn)呼叫信息的讀出和提供用戶對系統(tǒng)的維護,。設計相應的協(xié)議,以規(guī)范命令及其響應信息的功能和特征。
(4) 具備多任務特性
系統(tǒng)可以在接收和響應用戶命令的同時,實現(xiàn)呼叫信息的實時接收和緩存,。即系統(tǒng)在交換機與用戶機之間的工作,包括交換機呼叫信息的接收與緩存,、用戶命令信息的接收與響應,宏觀上具有多任務特性。支持呼叫信息讀出口波特率在9.6~460kbps之間可選,。支持直接或Modem連接,實現(xiàn)呼叫信息的本地或遠程讀出,。
2 系統(tǒng)硬件設計
圖1所示為交換機呼叫信息緩存系統(tǒng)的硬件結構框圖。其主要構成包括:
?
(1)選用Atmel公司微控制器AT89C52為核心,時鐘頻率為18.432MHz;AT89C52硬件資源分配方案如表1,。
?
(2)采用Intel公司新近推出的Strata系列閃速存儲器28F320J5和28F640J5構成緩沖存儲器陣列,硬件支持4MB,、8MB、12MB或16MB緩存空間配置,采用無跳線設計,。
(3)擴展UART接口芯片TL16C550,采用Maxim公司的MAX3225完成CMOS與RS232C電平轉換,用于與計算機或Modem接口,。此設計方案的特點是:串口收發(fā)各有16字節(jié)的硬件FIFO,速度高達460kbps;接口抗靜電能力為15kV。
(4)利用AT89C52的口線構成軟件串行接口,。采用電流環(huán)I/O驅動電路和相應的電平轉換電路與交換機串口連接,支持通信距離可達1km,。
(5)后備電池管理及DC-DC變換電路。串行輸出A/D變換器TLC0838C主要用于外部電源及電池電壓及容量的監(jiān)測,而并行輸出口74HC374芯片則用于電池充放電控制及MAX3225,、電流環(huán)電路的開關控制,。
(6)單片串行EEPROM X25045用于系統(tǒng)參數(shù)的配置與保存、低電源電壓監(jiān)視,、可編程硬件看門狗電路,。
(7)閃速存儲器AT29C256用于微控制器片外執(zhí)行系統(tǒng)軟件。用戶還可以利用AT89C52內部程序存儲器中的重載模塊和AT29C256,實施系統(tǒng)軟件的在線升級,。
3 系統(tǒng)軟件設計
3.1 主流程
圖2為包括初始化和主循環(huán)的系統(tǒng)軟件主體流程,。其中,初始化程序完成系統(tǒng)主緩存容量及其讀寫斷點的檢測,包括實現(xiàn)對28F320J5與28F640J5混合配置及無跳線硬件設計的支持;從串行EEPROM中讀取系統(tǒng)配置參數(shù),設置各種報警門限值、初始化軟串口和TL16C550硬串口波特率等;單片機和TL16C550接口硬件的初始化編程,。主循環(huán)中,后備電池管理主要包括電池工作模式及其工作時間,、電池可維持系統(tǒng)工作時間及電池容量信息的管理,、電池充放電控制等;LED及蜂鳴器控制提供諸如空閑緩存容量低于門限、直接或Modem連接,、電池供電,、軟串口連接故障等狀態(tài)的指示或聲光報警,T1定時中斷服務為其提供基準定時,而T0則用于產(chǎn)生約2.4kHz的“蜂鳴器”驅動波形。
?
表2為系統(tǒng)支持的命令集(共37個命令)中最基本的一部分,。其中“NAK”和“ACK+檢查和”用于呼叫信息讀出協(xié)議,。系統(tǒng)收到“NAK”或錯誤“檢查和”時,發(fā)送“NAK+話單”信息包(一條話單為一次電話呼叫產(chǎn)生的以CR或CR/LF結束的呼叫信息串);收到正確“檢查和″時,發(fā)送“ACK+話單”信息包;無話單可讀出時發(fā)送響應信息“?選DISCONNECT”。此外,協(xié)議規(guī)定一般命令以問號開頭,響應信息以感嘆號開頭,。
?
3.2 信息緩存
交換機呼叫信息的接收及緩沖存儲,是嵌入在各功能模塊中完成的,如圖3所示,。針對Strata 閃速存儲器的編程特點,在AT89C52內部RAM區(qū)開辟二個大小為16字節(jié)的編程緩沖區(qū)。軟串口接收到的串行數(shù)據(jù)經(jīng)動態(tài)壓縮之后依次循環(huán)填入緩沖區(qū),一旦填滿一個緩沖區(qū),即通知系統(tǒng)實施緩沖編程,。各功能模塊在執(zhí)行過程中及時主動檢測相應的通知標志,確保呼叫信息的實時緩存,。
?
3.3 軟串口的實現(xiàn)
以AT89C52的INT0引腳為RXD,結合INT0邊沿中斷和T2定時中斷服務程序的設計,以軟件方式控制串行呼叫信息的采樣接收。同時通過監(jiān)測記錄串行幀起始位及LSB的特征,設計相應的技術準則,實現(xiàn)對交換機串口輸出波特率的自動識別與跟蹤,。
AT89C52為核心,選用性價比高的主存儲器和外圍接口芯片,配合強大靈活的軟件設計,開發(fā)程控交換機呼叫信息緩沖系統(tǒng),實現(xiàn)了低成本,、大容量、高實時和多任務特性,。此外,系統(tǒng)還具有以下重要特點:(1)軟串口具有波特率自動識別能力;(2)信息讀出速度可達460kbps;(3)后備電池管理,聲光報警;(4)系統(tǒng)軟件在線重載;(5)命令集設計規(guī)范,功能完備;(6)已通過嚴格的功能和電磁兼容測試,。本系統(tǒng)適合公司、學校,、科研和政府等部門程控交換機話單業(yè)務的管理,。
?
參考文獻
1 韋江維,胡華安.程控交換機話單自動存儲器的設計.電子技術應用,1997;23(4):30~31
2 李華編.MCS-51單片機接口技術.北京:北京航空航天大學出版社,1991:540~587
3 Intel Corporation.Intel Strata Flash Memory Thchnology.CG-041493,,1998.1
4 羅志坤,徐植堅.串行可編程監(jiān)控EEPROM器件X25045及其應用.電子技術,1998,;(12):36~39
5 Texas Instruments Incorporated. 8-BIT ANALOG-TO-DIGITAL CONVERTERS WITH SERIAL CONTROL.1998