基于MC68HC05CL16的可配置型电话计费器的设计和实现
扫描二维码
随时随地手机看文章
电话机用户数以亿什,计费依据来自电信局交换机给出的清单。清单方式是准确的,但绝大多数电话机用户(极少数拥有和使用Fax和Internet微机的用户除外)不能及时方便地看到费用清单。各类卡式电话机可以实时显示计费,但不宜进入家庭。前些年常见的LED公用电话计费器则不能适应有时会发生变化的电话费率。
我们希望能象家庭内的电表、水表、气表一样,推广使用电话计费器(表),这种电话计费器应具有如睛特征:
●具有可配置性,即费率和时钟源等参数可重新设置,且人机接口友好;
●计费准确,记录的主叫电话信息的条数在100和1000之间;
●功耗低,干电话可用一年或使用电话线电源;
●可单独使用,也可和电话机合二为一制成一件产品。
笔者设计实现的Callputer0型电话计费器即符合以上特征。下面对该计费器予以介绍,并把讨论的重点放在其可配置性上。
1 系统硬件设计
Callputer0型电话计费器的硬件框图如图1所示。所为系统核心,笔者采用Motorola公司的单片机MC68HC05CL16。该单片机的特点之一是含有Call-ID功能;特点之二是含液晶显示驱动器,可直接驱动液晶显示,从而使计费器成本低于电话机。摘机识别电路可识别被叫摘机信号,从而启动单片机内的定时计费。DTMF电路收发双音多频信号。键盘用于费纺和时钟源等参数的重新设置。
2 系统软件设计
采用05汇编语言编写的系统软件的流程如图2所示。其中状态三(设置)子模块涉及大量的中断调用和定时计算,是编程的难点。STOP低功耗方式可使待机时单片机的工作电流减小到μA数量级。
3 基于可配置性的设计要点
该计费器的工作状态有三川。即:状态“一”表示计费总额;状态“二”表示单条计费,如“二99”表示第99条主叫电话的计费信息;状态“三”表示处于设置状态。下面介绍三种工作的显示内容和功能设置。
3.1 显示内容及功能设置
a.某段计费时间范围内计费总额的显示
例如,从8月21日00时00分,即第57条到第59条主叫电话的计费总额(含市话,国内长途,港澳台长途,国际长途)的屏显示如表1所列。
[!--empirenews.page--]
计费参考类型占用一个字节,如00110111,其中:
Bit6表示已选择的参考时钟源:1-电信局,0-计费器自身。若选择电信局交换机时钟,则计费误差较小,但用户需到电信局开通Call-ID业务按月缴费;若选择计费器自身时钟,则计数误差较大,但用户不必开通Call-ID业务按月缴费。
Bit5和bit4表示已选择的计费基本时间单位:11-按分钟计费,10-按10秒计费,01-按6秒计费,00-按1秒计费。目前应选择11。
Bit2和bit表示已选择的基本通话费:11-11类基本通话费,10-10类基本通话费,01-01类基本通话费,00-00类基本通话费。这四类可分别分配给国内长长途,国内短长途,市话和国际长途。
Bit0表示已选择的附加费:1-1类附加费,0-0类附加费。
以上各项可按实际情况进行组合,如37H代表“参考时钟源是计费器自身”并“按分钟计费”,“已选择的基本通话费为11类”而且“已选择的附加费是1类”。
(2)其它屏显示:
S2为设置被叫号码的区号,S3为设置基本通话费和附加费,S4为设置一天中某段时间的折扣率,S5为设置周六、周日的折扣率,S6为设置节日的折扣率,S7为计费总额所对应的计费时间范围的设置。
3.2 4×4键盘输入及功能设置
4×4键盘的定义如表4所列,其中主要键功能的设置如下:
(上翻UP)键和(下翻DOWN)键:可上翻一屏信息和下翻一屏信息。
(设置SET)键:该键的操作最重要,设置不艰险则计费器不能正常准确工作。双键(设置SET)和(1)简称S1,对应于液晶显示屏上显示的序号是“三 1”.双键S1依次按下后,显示屏上显示“三1”;然后用户自行设置。和设置S1类似,用户参照3.1可依次设置好S2、S3、S4、S5、S6和S7。
(计费总额SUM)键:计算并显示,如3.1a中所示的8月21日至9月5日的费用总额。
(屏显示状态切换*)键:(*)(1)键用于显示3.1a中所示内容,序号显示“-01”“-99”,(*)(2)键用于显示3.1b中所示内容,序号显示“二01”~“二99”;(*)(3)键用于显示3.1c中所示内容,序号显示“三1”~“三72”。