售前電話
135-3656-7657
售前電話 : 135-3656-7657
程控交換機(jī)生成的電話呼叫信息一般通過其標(biāo)準(zhǔn)的串行接口輸出,電話計(jì)費(fèi)系統(tǒng)軟件可以用計(jì)算機(jī)直接從交換機(jī)接收呼叫信息。但呼叫信息的輸出是隨機(jī)的,取決于交換機(jī)支持的網(wǎng)上分機(jī)電話的使用狀態(tài)。為防止信息丟失,計(jì)算機(jī)系統(tǒng)必須保持全天二十四小時(shí)連續(xù)工作。程控交換機(jī)話單自動(dòng)存儲(chǔ)器的設(shè)計(jì)與應(yīng)用,一定程度上提高了計(jì)費(fèi)工作的靈活性,降低了系統(tǒng)的運(yùn)行成本1?。但早期系統(tǒng)或是不具備多任務(wù)工作特性,使用不便;或是采用靜態(tài)RAM作緩存,導(dǎo)致數(shù)據(jù)存儲(chǔ)可靠性不高,系統(tǒng)功耗較大;而且系統(tǒng)功能設(shè)計(jì)較低且不規(guī)范,靈活性較差。
本文以AT89C52單片機(jī)為核心,采用Intel Strata系列閃速存儲(chǔ)器作緩存,設(shè)計(jì)開發(fā)的新一代程控交換機(jī)呼叫信息緩沖系統(tǒng),用于串行數(shù)據(jù)的接收、緩存和讀出,具有多任務(wù)工作特性,而且實(shí)時(shí)性好,讀出速度快,數(shù)據(jù)存儲(chǔ)可靠性高,使用靈活方便。
1 系統(tǒng)的基本性能要求
1 實(shí)時(shí)緩沖能力
在緩存空間允許和系統(tǒng)供電正常的條件下,保證呼叫信息的實(shí)時(shí)接收和緩存。設(shè)計(jì)采用軟串口接收數(shù)據(jù),波特率為300×2nbps(其中n=0~6),并實(shí)現(xiàn)對(duì)交換機(jī)輸出波特率的自動(dòng)識(shí)別與跟蹤。
2 大容量緩存、配置靈活
支持緩存空間高達(dá)16MB,并可在1~16MB之間進(jìn)行剪裁配置。支持空閑緩存容量的動(dòng)態(tài)查詢和聲光報(bào)警功能,使緩存信息能被及時(shí)讀出。
3 支持一組規(guī)范的命令
定義并支持一組規(guī)范的命令,實(shí)現(xiàn)呼叫信息的讀出和提供用戶對(duì)系統(tǒng)的維護(hù)。設(shè)計(jì)相應(yīng)的協(xié)議,以規(guī)范命令及其響應(yīng)信息的功能和特征。
4 具備多任務(wù)特性
系統(tǒng)可以在接收和響應(yīng)用戶命令的同時(shí),實(shí)現(xiàn)呼叫信息的實(shí)時(shí)接收和緩存。即系統(tǒng)在交換機(jī)與用戶機(jī)之間的工作,包括交換機(jī)呼叫信息的接收與緩存、用戶命令信息的接收與響應(yīng),宏觀上具有多任務(wù)特性。支持呼叫信息讀出口波特率在9.6~460kbps之間可選。支持直接或Modem連接,實(shí)現(xiàn)呼叫信息的本地或遠(yuǎn)程讀出。
2 系統(tǒng)硬件設(shè)計(jì)
2采用Intel公司新近推出的Strata系列閃速存儲(chǔ)器28F320J5和28F640J5構(gòu)成緩沖存儲(chǔ)器陣列,硬件支持4MB、8MB、12MB或16MB緩存空間配置,采用無跳線設(shè)計(jì)。
3擴(kuò)展UART接口芯片TL16C550,采用Maxim公司的MAX3225完成CMOS與RS232C電平轉(zhuǎn)換,用于與計(jì)算機(jī)或Modem接口。此設(shè)計(jì)方案的特點(diǎn)是:串口收發(fā)各有16字節(jié)的硬件FIFO,速度高達(dá)460kbps;接口抗靜電能力為15kV。
? 4利用AT89C52的口線構(gòu)成軟件串行接口。采用電流環(huán)I/O驅(qū)動(dòng)電路和相應(yīng)的電平轉(zhuǎn)換電路與交換機(jī)串口連接,支持通信距離可達(dá)1km。
? 5后備電池管理及DC-DC變換電路。串行輸出A/D變換器TLC0838C主要用于外部電源及電池電壓及容量的監(jiān)測,而并行輸出口74HC374芯片則用于電池充放電控制及MAX3225、電流環(huán)電路的開關(guān)控制。
? 6單片串行EEPROM X25045用于系統(tǒng)參數(shù)的配置與保存、低電源電壓監(jiān)視、可編程硬件看門狗電路。
? 7閃速存儲(chǔ)器AT29C256用于微控制器片外執(zhí)行系統(tǒng)軟件。用戶還可以利用AT89C52內(nèi)部程序存儲(chǔ)器中的重載模塊和AT29C256,實(shí)施系統(tǒng)軟件的在線升級(jí)。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 主流程
其中,初始化程序完成系統(tǒng)主緩存容量及其讀寫斷點(diǎn)的檢測,包括實(shí)現(xiàn)對(duì)28F320J5與28F640J5混合配置及無跳線硬件設(shè)計(jì)的支持;從串行EEPROM中讀取系統(tǒng)配置參數(shù),設(shè)置各種報(bào)警門限值、初始化軟串口和TL16C550硬串口波特率等;單片機(jī)和TL16C550 接口硬件的初始化編程。主循環(huán)中,后備電池管理主要包括電池工作模式及其工作時(shí)間、電池可維持系統(tǒng)工作時(shí)間及電池容量信息的管理、電池充放電控制等;LED及蜂鳴器控制提供諸如空閑緩存容量低于門限、直接或Modem連接、電池供電、軟串口連接故障等狀態(tài)的指示或聲光報(bào)警,T1定時(shí)中斷服務(wù)為其提供基準(zhǔn)定時(shí),而T0則用于產(chǎn)生約2.4kHz的"蜂鳴器"驅(qū)動(dòng)波形。
表2為系統(tǒng)支持的命令集(共37個(gè)命令)中最基本的一部分。其中"NAK"和"ACK+檢查和"用于呼叫信息讀出協(xié)議。系統(tǒng)收到"NAK"或錯(cuò)誤"檢查和"時(shí),發(fā)送"NAK+話單"信息包(一條話單為一次電話呼叫產(chǎn)生的以CR或CR/LF結(jié)束的呼叫信息串);收到正確"檢查和″時(shí),發(fā)送"ACK+話單"信息包;無話單可讀出時(shí)發(fā)送響應(yīng)信息"?DISCONNECT"。此外,協(xié)議規(guī)定一般命令以問號(hào)開頭,響應(yīng)信息以感嘆號(hào)開頭。
3.2 信息緩存
交換機(jī)呼叫信息的接收及緩沖存儲(chǔ),是嵌入在各功能模塊中完成的。