DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1505|回复: 1
打印 上一主题 下一主题

[待整理] 基于80C31的固定电话短信息终端的开发

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-5 10:42:46 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
基于80C31的固定电话短信息终端的开发

摘 要: 本文给出了一种以80C31为主控CPU的固定电话短信息终端的设计,从系统软硬件两个方面说明了固定电话短信息终端的设计方法和各个部分的工作原理。对于在开发中遇到的难点,如CAS音检测,FSK信息的处理和LCD汉字字符显示等问题重点进行了阐述。
关键词: 短信息;电话;DTMF;FSK
现在,短信息服务日益普及。各个电话机厂家竞相设计和开发短信息终端电话。为配合我所开发的短信息终端专用集成芯片,我们设计开发出了可发送和接受短信息的固定电话。此电话除具有来电显示功能外,还能够接收信息中心下传的FSK格式短信,可以利用DTMF和FSK两种格式上传信息。有比较好的人机界面,能够采用拼音输入方法编辑短信内容。能够存储200个电话,200个下载的短信,实现电话号码的查找,下载短信的阅读,时钟显示等功能。下面先从硬件方面介绍系统的设计。
硬件部分


图1 系统硬件原理框图


图2 CAS检测原理电路
系统硬件原理框图见图1,下面说明各部分的功能。
CPU控制部分
系统中采用80C31作为主控CPU,负责整个系统的程序流程,外扩了32K RAM,64K EPROM,和一片ATMEL公司的AT29C040A作为电话薄、短信息和二级字库字模的存储器。
CAS检测电路
CAS检测原理电路如图2所示。在短信电话中,CAS信号的检测是必不可少的,但以前的普通电话及来电显示电话都不具有此项功能,市场上具有CAS音检测功能的芯片也比较少见,因此,我们设计了一种CAS音检测电路,在实际应用中,效果不错(见图3)。
CAS为DTMF信号,频率为2130/2750Hz,所以采用两个单独的滤波器,如果为CAS,则A,B点输出均为高电平,产生CAS中断。图中SIGNAL为DTMF信号,CAS_CON为CAS音检测控制电路,当CAS_CON=1时,检测CAS音;CAS_CON=0时,不检测CAS音。当检测到CAS,CASINT输出高电平。
EPLD集成控制电路
外部控制电路部分采用ALTERA公司的EPM7128QC160,将设计中所用到的74系列和4000系列芯片全部集成在里面,并且它有160个PIN,能够满足系统中输入输出信号对管脚的需求。大大缩小了PCB面积,在调试时非常方便,且提高了系统整体的可靠性。
其它部分因为都有现成的芯片或成熟的电路,这里不再说明。


图3 CAS检测实际电路


图4 LCD显示模块流程图
软件部分
软件采用模块化设计,每一模块都可单独设计和调试。主要有键盘处理模块、系统状态转换模块、电话处理模块(包括FSK短信的处理与发送)、LCD显示模块、中断处理模块(CAS,FSK,振铃,摘挂机的检测和FSK短信息接收)。除中断处理模块外,其它的四个模块在主程序中循环调用。
键盘处理模块
电话与CPU利用同一按键进行工作,由CPU通过模拟开关控制按键的传递方向。在正常打电话或摘机时,键值传递给电话中的拨号芯片;挂机时则传递给CPU处理。CPU不停的监测是否有键被按下,当有键按下时,设置系统状态转换标志为1,否则为0。为了使用方便,比普通电话增加了四个按键:取消键(key_C),主菜单键(key_M),选中键(key_OK),输入方法切换键(key_CH)。
系统状态转换模块
这是整个系统的核心控制部分。它根据按键及系统所处的不同状态,进行状态间的切换和状态内键值的处理。当系统状态转换标志为1时,进入此模块。根据键值的不同,进行相应的处理。系统主要设定的状态有: 初始状态(S_init),主菜单状态(S_mainmenu),电话薄状态(S_menu1),短信息状态(S_menu2),系统设置状态(S_menu3),添加电话号码状态(S_addphone_1),添加电话姓名状态(S_addphone_2),添加电话存储位置状态(S_addphone_3),查找电话状态(S_lookphone),短信编辑状态(S_edit_sm),发送短信状态(S_send_sm),阅读短信状态(S_read_sm)等。
LCD显示模块
这一部分是依据系统所处的状态进行显示。主要有菜单的显示,所编辑汉字与字符的显示,下载的短信的显示,显示有短信和来电显示电话等部分。显示中,最难于处理的是短信的汉字与ASCII码一起显示,因为汉字是全角显示,ASCII码则为半角显示,否则显示效果不好,并且还要涉及翻页中显示的起始位置。在开发中采用的程序流程如图4所示。
电话处理模块
在这一部分中,负责处理短信息电话,来电显示电话,及普通的电话。当有振铃到来时,进入电话处理程序。接受交换中心发送的FSK信号,并根据信号的内容,决定是短信息,还是来电显示电话。对于短信息,则发送应答信息,转入短信息的处理模块;当是来电显示(CALLER ID)电话,则将在LCD上显示电话号码。如果没有收到FSK信息,则判定为普通的电话。(系统暂时不考虑来电显示电话中下行DTMF格式)。图5是其程序流程图。
中断处理程序(CAS,FSK,振铃,摘挂机)
在中断处理程序中,主要是处理FSK信号的接收、CAS信号,振铃和摘挂机检测,并使相应的标志位置1,以便于主程序处理。其中,FSK信号的接受先是采用查询的方法同步FSK信息,在同步之后是利用51单片机的串口接收。


图5 电话处理程序图
结语
设计的固定电话网短信息终端同时具有上传消息的能力和接收短消息终端下行消息的能力(C类终端),满足“基于固定网短消息传送的技术规范”的要求。为短信息终端专用集成芯片提供了验证平台。
参考文献
1 基于固定电话网短信息技术要求和测试方法
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-23 15:03 , 耗时 0.091532 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表