- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于MC68HC05CL16的可配置型电话计费器的设计和实现
摘要:介绍怎样利用Motorola单片机设计和实现一款低成本的可配置型电话计费器。其可配置性保证了该计费器可适应电信局政策费率和时段费率、时钟源、计费基本时间单位(按分计费或按秒计费)和被叫电话区号等多种计费参数的变化。
关键词:可配置 单片机 电话计费器 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所列。
表1 某段计费时间范围内的计费总额的屏显示
a屏显示: | 序号 | 月 | 日 | 时 | 分 | 话费(元) |
-57 | 08 | 21 | 00 | 00 | 00000.00 | |
b屏显示: | 序号 | 月 | 日 | 时 | 分 | 话费(元) |
-89 | 09 | 05 | 24 | 00 | 00168.88 |
b.单条主叫电话信息的屏显示
例如,第99条主叫电话的计费信息如表2所列。
表2 单条主叫电话信息的屏显示
a屏显示: | 序号 | 计费参考类型 | 月 | 日 | 时 | 分 | 区号 | 电话号码 | |
二99 | 37 | 07 | 21 | 22 | 36 | 023C | 6841200 | ||
序号 | 月 | 日 | 时 | 分 | 时长(分钟) | 折扣率(%) | 话费(元) | ||
b屏显示: | 二00 | 07 | 21 | 22 | 36 | 008.90 | 50 | 0006.75 |
c.设置屏显示
(1)S1屏显示
S1(设置计费参考类型,且设置日期、时钟为“当前北京时间”)屏显示如表3所列。
表3 S1设置屏显示
序号 | 计费参考类型 | 月 | 日 | 时 | 分 |
三1 | 37 | 07 | 18 | 23 | 59 |
计费参考类型占用一个字节,如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所列,其中主要键功能的设置如下:
表4 4×4键盘定义
(上翻 UP) | (1) | (2) | (3) |
(设置 SET) | (4) | (5) | (6) |
(下翻 DOWN) | (7) | (8) | (9) |
(计费总额 SUM) | (屏显示状态切换*) | (0) | (确认#) |
(上翻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”。
基于上述设计要点研制成功的Callputer0型电话计费器已投入使用半年多,计费准确方便,既可用于家庭的电话计费,又可用于来电显示。经过可靠性优化中试后,即可批量投放市场,感兴趣者可通过厂家和我们用E-mail联系,地址为:wangbm@szu.edu.cn)。