网络通信
返回首页

程控交换机呼叫信息缓冲系统的设计

2006-05-07 来源:电子技术应用

    摘要:介绍一种以AT89C52单片机为核心,采用Strata系列大容量闪速存储器作缓存的程控交换机呼叫信息缓冲系统。该系统实现了多任务方式下的串行数据接收、缓存和读出,其软串口用于信息的实时接收和波特率的自动识别,数据读出速度达460kbps,并设计了规范的命令集。

    关键词:呼叫信息 缓冲 实时 多任务 闪速存储器

程控交换机生成的电话呼叫信息一般通过其标准的串行接口输出,电话计费系统软件可以用计算机直接从交换机接收呼叫信息。但呼叫信息的输出是随机的,取决于交换机支持的网上分机电话的使用状态。为防止信息丢失,计算机系统必须保持全天二十四小时连续工作。程控交换机话单自动存储器的设计与应用,一定程序上提高了计费工作的灵活性,降低了系统的运行成本[1]。但早期系统或是不具备多任务工作特性,使用不便;或是采用静戊RAM作缓存,导致数据存储可靠性不高,系统功耗较大;而且系统功能设计较低且不规范,灵活性较差。

本文以AT89C52单片机为核心,采用Intel Strata系列闪速存储器作缓存,设计开发的新一代程控交换机呼叫信息缓冲系统,用于串行数据的接收、缓存和读出,具有多任务工作特性,而且实时性好,读出速度快,数据存储可靠性高,使用灵活方便。

1 系统的基本性能要求

(1)实时缓冲能力

在缓存空间允许和系统供电正常的条件下,保证呼叫信息的实时接收和缓存。设计采用软串口接收数据,波特率为300×2 n bps(其中n=0~6),并实现对交换机输出波特率的自动识别与跟踪。

(2)大容量缓存、配置灵活

支持缓存空间高达16MB,并可在1~16MB之间进行剪裁配置。支持空闲缓存容量的动态查询和声光报警功能,使缓存信息能被及时读出。

定义并支持一组规范的命令,实现呼叫信息的读出和提供用户对系统的维护。设计相应的协议,以规范命令及其响应信息的功能和特征。

(4)具备多任务特性

系统可以在接收和响应用户命令的同时,实现呼叫信息的实时接收和缓存。即系统在交换机与用户机之间的工作,包括交换机呼叫信息的接收与缓存、用户命令信息的接收与响应,宏观上具有多任务特性。支持呼叫信息读出口波特率在9.6~460kbps之间可选。支持直接或Modem连接,实现呼叫信息的本地或远程读出。

2 系统硬件设计

图1所示为交换机呼叫信息缓存系统的硬件结构框图。其主要构成包括:

表1 AT89C52硬件资源分配方案

资  源 功能分配
P0、P2 扩展外部存储器和接口电路
P2.5~P2.7 被译码提供外扩芯片的片选
P1.0~P1.4 X25045、TLC0838C的I/O及时钟
P1.5~P1.5 Buffer,Power LED控制
P1.7、P3.5 软串口CTS,RTS
P3.5 软串口TXD
P3.3(INT1) TL16C550中断信号
P3.2(INT0) 软串口RXD,Data LED控制
P3.0、P3.1 蜂鸣器、Strata缓存控制
P3.6、P3.7 外扩存储器、接口的读写信号
定时器T0 定时产蜂鸣器控制波形
定时器T1 电池管理,LED控制定时
定时器T2 用于软串口工作定时中断

(1)用Atmel公司微控制器AT89C52为核心,时钟频率为18.432MHz;AT89C52硬件资源分配方案如表1。

(2)采用Intel公司新近推出的Strata系列闪速存储器28F320J5和28F640J5构成缓冲存储器阵列,硬件支持4MB、8MB、12MB或16MB缓存空间配置,采用无跳线设计。

(3)扩展UART接口芯片TL16C550,采用Maxim公司的MAX3225完成CMOS与RS232C电平转换,用于与计算机或Modem接口。此设计方案的特点是:串口收发各有16字节的硬件FIFO,速度高达460kbps;接口抗静电能力为15kV。

(4)利用AT89C52的口线构成软件串行接口。采用电流环I/O驱动电路和相应的电平转换电路与交换机串口连接,支持通信距离可达1km。

(5)后备电池管理及DC-DC变换电路。串行输出A/D变换器TLC0838C主要用于外部电源及电池电压及容量的监测,而并行输出口74HC374芯片则用于电池充电控制及MAX3225、电流环电路的开关控制。

(6)单片串机EEPROM X25045用于系统参数的配置与保存、低电源电压监视、可编程硬件看门狗电路。

(7)闪速存储器AT29C256用于微控制外执行系统软件。用户还可以利用AT89C52内部程序存储器中的重裁模块和AT29C256,实施系统软件的在线升级。

3 系统软件设计

3.1 主流程

图2为包括初始化和主循环的系统软件主体流程。其中,初始化程序完成系统主缓存容量及其读写断点的检测,包括实现对28F320J5与28F640J5混合配置及无跳线硬件设计的支持;从串行EEPROM中读取系统配置参数,设置各种报警门限值、初始化软串口和TL16C550硬串口波特率等;单片机和TL16C550接口硬件的初始化编程。主循环中,后备电池管理主要包括电池工作模式及其工作时间、电池可维持系统工作时间及电池容量信息的管理、电池充放电控制等;LED及蜂鸣器控制提供诸如空闲缓存容量低于门限、直接或Modem连接、电池供电、软串口连接故障等状态的指示或声光报警,T1定时中断服务为其提供基准定时,而T0则用于产生约2.4kHz的“蜂鸣器”驱动波形。

表2为系统支持的命令集(共37个命令)中最基本的一部分。其中“NAK”和“ACK+检查和”用于呼叫信息读出协议。系统收到“NAK”或错误“检查和”时,发送“NAK+话单”信息包(一条话音为一次电话呼叫产生的以CR或CR/LF结束的呼叫信息串)、收到正确“检查和”时,发送“ACK+话单”信息包;无话单可读出时发送响应信息“!DISCONNECT”。此外,协议规定一般命令以问号开头,响应信息以感叹号开头。

表2 系统支持的主要命令及含义

命  令 含  义
NAK 请求系统发信息包
ACK+检查和 响应接收的信息包
? BA 起动波特率自动识别功能
? BATT 查询电池状态信息
? BC 查询波特率调整次数
? BD 查询软串口当前波特率
? BF 固定或切换软串口波特率
? INIMEM 清系统的主缓存空间
? LOGOFF 系统进入保护模式
? MD 查询系统缓存的全部话单
? MF 查询系统主存空闲容量(KB)
? MONITOR 设置/取消系统监视接收功能
? MT 查询系统主缓存总容量(KB)
? NPSWD 修改系统口令
? RELOAD 请求重载系统软件

3.2 信息缓存

交换机呼叫信息的接收及缓冲存储,是嵌入在各功能模块中完成的,如图3所示。针对Strata闪速存储器的编程特点,在AT89C52内部RAM区开辟二个大小为16字节的编程缓冲区。软串口接收到的串行数据经动态压缩之后依次循环填入缓冲区,一旦填满一个缓冲区,即通知系统实施缓冲编程。各功能模块在执行过程中及时主动检测相应的通知标志,确保呼叫信息的实时缓存。

3.3 软串口的实现

以AT89C52的INT0引脚为RXD,结合INT0边沿中断和T2定时中断服务程序的设计,以软件方式控制串行呼叫信息的采样接收。同时通过监测记录串行帧起始位及LSB的特征,设计相应的技术准则,实现对交换机串口输出波特率的自动识别与跟踪。

AT89C52的核心,选用性价比高的主存储器和外围接口芯片,配合强大灵活的软件设计,开发程控交换机呼叫信息缓冲系统,实现了低成本、大容量、高实时和多任务特性。此外,系统还具有以下重要特点:(1)软串口具有波特率自动识别能力;(2)信息读出速度可达460kbps;(3)后备电池管理,声光报警;(4)系统软件在线重载;(5)命令集设计规范,功能完备;(6)已通过严格的功能和电磁兼容测试。本系统适合公司、学校、科研和政府等部分程控交换机话单业务的管理。

进入网络通信查看更多内容>>
相关视频
  • 微波毫米波电路分析与设计

  • 天线原理与基本参数

  • Digi-Key: Follow Me 系列(1) 直播回放及答疑记录

  • 无线感测网络

  • 微波五讲

  • 天线原理 哈工大 林澍

精选电路图
  • 永不缺相启动运行的电动机控制电路

  • CCFL的工作原理及电子驱动电路解析

  • MT3608构成3.7V转12V的升压电路图

  • 运算放大器IC741的基本工作原理及在电路中的实现方式

  • 基于M66T旋律发​​生器的电路图解析

  • 基于TDA1554的立体声放大器电路

    相关电子头条文章