单片机来电显示器的设计与实现
2 软件设计实现
主叫号码显示器软件使用汇编语言编写,配合硬件完成主叫信息接收、查阅及删除功能。汇编语言程序主要由主程序、串行中断处理程序、定时器中断处理程序组成。
上电时,MCU进入主程序中运行对串口寄存器设置接收波特率等参数,液晶显示模块LCD初始化并显示新呼叫总个数,以0.2s的定时长度设置定时器参数,对有关程序变量初始化,然后进入掉电状态。主程序框图如图4所示。
图5是串行口中断接收处理程序。串行口中断到来时,MCU将收的串行数据暂存在内部RAM中。若收到的信息有误码,则在LCD上显示“ERROR”;若交换机发来的信息格式为“日期+时间+P+..”,则在LCD上显示“PRIVATE”,表示主叫用户要求本次呼叫不向被叫用户传送其号码;若交换机发来的信息格式为“日期+时间+O+..”,LCD上将显示“OUT OF AREA”,表示主叫用户的本次呼叫超出来电显示服务范围。
若接收的主叫信息正常,则按接收的先后顺序依次存储于EEPROM中。当主叫识别信息有重复时,最新呼叫将覆盖前次呼叫;当存储空间全部存满后,按“先进先出”的原则自动删除最先存储的主叫信息。

结束语
来电显示功能目前已获得普遍使用。本文介绍的来电显示器在进行软、硬设计时充分利用MCU的3种工作状态,尽可能地降低了功耗;配以EEPROM作为存储器件,使得该产品与同类产品相比使用期限有较大的增加(采用电池供电时)。
评论