AT89C52在程控交换机呼叫缓冲系统中的应用
扫描二维码
随时随地手机看文章
程控交换机生成的呼叫信息是通过串行接口输出,电话计费系统可用计算机从交换机输出口接收呼叫信息。而呼叫信息的输出取决于系统分机电话的使用状态,为防止信息丢失,计算机系统必须保持全天连续工作。早期系统多采用静态RAM作缓存,因此数据可靠性不高,系统功耗大;并且系统灵活性较差。本文介绍一种以AT89C52单片机为核心,运用In-telStrata系列闪速存储器作缓存的程控交换机呼叫信息缓冲系统,该系统具有多任务工作特性,数据存储可靠性高,读出速度快,系统灵活性高等诸多特点。
系统硬件结构
下图为交换机呼叫信息缓存系统的硬件结构构图。其主要组成为:
(1)以Atmel公司微控制器AT89C52为核心,时钟频率为18.432MHz。
(2)用Intelstrata系列闪速存储器28F320J5和28F640J5组成缓冲存储器阵列,硬件支持4MB、8MB、12MB、16MB缓存空间配置,运用无跳线设计。
(3)UART接口芯片采用TL16C550,运用Maxim公司的MAX3225完成CMOS与RS232C电平转换,用于与计算机或Modem接口。
(4)运用AT89C52的Pl、P3接口构成串行接口,采用电流环驱动电路和相应电平转换电路与交换机串口相连,其通信距离可达lkm。
(5)备用电池管理及DC-DC变换电路。串行输出A/D变换器,用于外部电源及电池电压及容量监测的TLC0838C芯片,行输出口74HC374芯片则用于电池充放电控制及AMX3225、电流环电路的开关控制。
(6)单片串行EEPROMX25045用于系统参数的配置与保存,低电源电压监视,可编程硬件看门独电路。
(7)闪速存储器AT29C256用于微控制器片外执行系统软件。用户可以利用AT89C52内部程序存储器中的重载模块和AT29C256,实施系统软件的在线升级。
系统软件组成
(1)主流程过程系统软件主体流程如上图所示。其中初始化程序完成系统主缓存容量及其读写断点的检测,包括对28F320J5和28F640J5混合配置及无跳线硬件设计的支持;从串行EEPROM中读取系统配置参数,设置各种报警值,初始化软串行口和TL16C550硬串行口波特率等;单片机和TL16C550接口硬件的初始化编程。主循环中,后备电池管理包括电池工作模式及其工作时间,电池可维持系统工作时间及电池容量信息的管理,电池充放电控制;LED及蜂鸣器在空闲缓存容量抵于门限,电池供电,Tl定时中断时,TO则产生约2.4kHz的蜂鸣器驱动波形。
(2)信息缓存过程如上图所示,交换机呼叫信息的接收和缓冲存储是嵌入各功能模块中完成的。在AT89C52内RAM区开辟二个16KB的编程缓冲区,软串口接收到的数据经压缩后依次填入缓冲区,一旦填满一个缓冲区,即通知系统实施缓冲编程。各功能模块及时主动检测相应的通知标志,确保呼叫信息的实时缓存。
(3)软串口的实现以AT89C52的NTO引脚为RXD,结合INTO边沿中断和后定时中断服务程序的设计,以软件方式控制串行呼叫信息的采样接收。同时通过监测记录串行帧起始位及LSB的特征,实现对串口输出波特率的自动识别和跟踪。
结束语
该系统以AT89C52为核心,选用性价比高的主存储器和外围接口芯片,配合强大灵活的软件设计,开发程控交换机叫信息缓冲系统,实现了低成本、大容量高实时和多任务特性。