微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求助51单片机基于DTMF中文来电显示制作

求助51单片机基于DTMF中文来电显示制作

时间:10-02 整理:3721RD 点击:

各位大哥 大家好 小弟网络上找到一篇使用51单片机制作的电话中文来电显示装置 觉得挺好的 但还由于小弟这个基础实在是太差 从文章中连一些具体零件已经原理图都不能够完全画出来 因为确实挺想做一个出来玩玩 烦请各位大哥能够帮忙做出原理图以及封装PCB的电子版 就是我导入就能用的 另外顺便帮小弟看看买的零件是不是正确 因为有些从图中我没办法判断多少值的 因为工作量确实挺大的 如果大哥们觉得需要一些辛苦费 也可以和我联系 虽然这东西不懂 不过确实有心想学一学

 
一、序言

  这里将介绍一个小型电子设计和制作的基本方法,从构思到最后制作完成的整个过程。这是一个基于DTMF制式的中文来电显示装置,这是本人的原创作品,已经全天候24小时运行一年多,没出现死机或程序跑飞现象,识别率100%,超级稳定。以下提供全部制作资料,包括原理图和源程序,可完全仿制,共享给大家学习和交流,转载请注明出处。  二、设计初衷

  中国电信提供主叫来电显示功能,每月人民币6元,这样就能让电话用户知道主叫方的来电号码,以便记录和“见机行事”。目前,市场上的来电显示电话技术非常成熟,可显示和记录主叫方的电话号码和来电时间。但是,这类来电显示电话大多数只有数字显示功能。

  众所周知,手机和小灵通也有来电显示功能,而且可以自己编辑电话簿,来电时除了显示电话号码,还能显示相对应的名字。这都是依赖于手机或小灵通自身设计的功能。然而,普通电话具备中文显示的产品极少,这类基于固定电话的中文来电显示电话其实技术简单,但是没有什么市场需求,而且成本提高,人是要赚钱的,所以就没什么开发的搞头。据我苦苦搜寻,有一款“步步高”的中文显示电话(支持家家e),但只能存储几十个电话本,而且屏幕较小,象素低,显示的信息有限,而且价格昂贵,性能也一般。

  但是,对于某些特殊电话用户来说,其实这个功能很有必要。例如一些较大型单位的工作电话,每日的来电量很多,一天几百个来电,来电的基本上都是本单位各部门的电话,连同手机号码一共有几百上千个。这每个月6元的仅仅只有电话号码的数字显示功能实在是鸡肋,超人才能记得那么多电话号码。要是能即时中文显示来电是那个单位哪个部门或者哪个人的话,这样对与“见机行事”将会有大大的帮助,特别是能立即准确核实一些特殊来电人的身份。

  三、设计思路和方案比较

  需要一台具备中文来电显示的电话,有以下方案:

  1、购买市场上的中文来电显示电话。价格昂贵,存储量太小,显示效果差,无法满足需要。

  2、用带来电解码功能的MODEM或“USB录音盒”。其实是一个电脑外设,使用USB等传输接口,与电脑连接,电脑软件完成查询和显示,而且具有录音等功能。 这个方案功能强大,完全满足需要,但价格超级昂贵,技术过于剩余,由于要用整台电脑,占用空间,消耗成本高,显示器不便于观看,耗电多,辐射又大。此方案作为备用参考。

  3、在电话线上并接一个小型来电显示装置,由单片机系统完成。这种方案可行,简单,成本低,但要花费一定的研发精力和时间。

  根据本人的功底,采用第3种方案,如下图:

  根据所掌握知识,以上方案绝对可行,关键是采用何种器件,如何编写解读和显示程序。单片机最小系统很多人都非常熟悉了,关键是在来电解码方面。根据我国电信部门的相关标准,目前来电显示有DTMF和FSK两种制式,经测试,本地区电信机房仍采用落后的DTMF制式,于是上网查阅了大量资料,选定DTMF双音频解码芯片MT8870,详细阅读该芯片的DATA SHEET(手册),发现接口简单,时序和很简单,编程非常方便。

  四、设计方案的验证

  由于是第一次使用该解码芯片,虽然芯片手册有详细参数和说明,但还是要进行验证,于是用“洞洞板”搭建了一个简单的测试电路,并根据电信部门DTMF制式的来电双音频时序,进行模拟测试。

  测试结果证明:1、该附加装置完全不影响原电话使用。2、该解码芯片的确能对双音频模拟信号转换为适合单片几读取的数字信号。至此,硬件系统方案已完全验证成功。

  

  五、硬件系统的搭建

  下图是PROTEL设计的硬件原理图,点击可放大。左边部分是单片机最小系统,上边部分128×64图形液晶接口,右边部分是DTMF解码电路,下边部分是电源稳压电路。

  画好原理图之后,认真检查电气连接是否有错误,选好器件封装,就可以开始画PCB了。电路很简单,用单层板就能搞定,选择“手动布线”,这样“飞线”会少很多。

 

  板子画好之后,检查没有错误警告后,就OK了,可以打印出来做板啦。-览”一下效果图。

 

  转过来看看走线如何:

 

  六、电路板的制作

  PCB电路板有好几种制作方法,可以直接把刚才用PROTEL设计好的的PCB文件拿给制板厂家制作,不过开板费较贵,像这个面积的单面板至少要上百元,我只打算做两块板,这样的话就亏大了。

  业余制板的有一种方法,是用“感光板”,成本低廉,制作方法简单,一块10cm×15cm的单面玻纤板只要人民币15元,这个设计只要将板裁一半就够了,也就7.5元。将PCB线路图打印到白纸上,用喷墨打印即可,然后就可以开始制板了。

 

  使用“感光板”制板说难不难,说容易也不容易,关键是要将技术掌握好,一般有十次以上做板经验就能得心应手了。现在这里不多介绍,大家可搜索和查阅相关资料。(下图有简单说明书,点击放大)。随便说说,下图的白粉是“显影剂”,2元一包。

 

  “感光板”曝光之后,冲洗完之后,就可以用三绿化铁进行腐蚀了,这个腐蚀就很简单了,也不多介绍。最后将腐蚀好的板子用小电钻钻好孔,把买回来的器件焊接上去就OK了。

  板上只用3个IC,其中一个51系列单片机,十几元左右;解码芯片MT8870只要4元;稳压集成1.5元;还有一些小电容、电阻、晶振、按钮、蜂鸣器、LED、接插件等,全部器件加起来也就三十几元。

  

  板子的反面,你看到的绿色线条其实是铜线来的,那绿色的是“感光”材料冲洗后留下的。

  

  板子上面插上一个带中文字库的128×64点阵液晶模块,这种液晶模块比较贵,要人民币90大元,不带中文字库的便宜一些,不过编程就麻烦些。本人是最怕麻烦的,宁可花多十几二十元。 板子上只要接上一个9V~12V“火牛”(就是变压器)即可,直流交流都行。板子上有稳压和保护,不怕。旁边有两个电话线的插座,其实两个是并联起来的,随便接一个均可,也可以一个“进”,一个“出”,非常简单方便。

  


  尺寸设计的刚好,一个完整的整体,不用外壳也非常美观坚固,这一向都是本人的设计风格。
 

  

  七、程序设计

  板子做好之后,任务就完成了一半了。大家可能以为上面一块干干净净的板子那么容易就做出来,好像很容易很轻松。其实做一块板就像一个建筑工地的民工,苦力活肯定少不了,到电子城买器件要到处跑,要准备一大堆的各式各样的工具,而且制作过程会产生很多废料,一般都要搞到到处七零八落,到处脏兮兮的,而且有不少有毒物质,加上工具大多都是锐器、高温、高电压,受一点皮肉之苦都是免不了的。

  板子做好后就如释重负了,剩下的工作就转到编程了。在电脑上编写程序,程序编译好之后,就能通过下载线或烧写器写到单片机的ROM里面。这样板子就能运行工作了。

  以下是本人编写的源程序,没有采用模块化,全部写在一个文件里面,有详细注释,可自行添加中文电话簿资料,经KeilC V2.39编译通过。 本人编程能力较差,写的不好,经无数次修改,不过经一年多的24小时全天后运行测试,还算相当稳定。

      

 

  以下是来电的瞬间,正在解读来电号码,(解读到弟6个号码时迅速把电话线拔掉,这样只是利于拍照)

 

  以下是来电时,显示预设电话簿的中文资料,可显示自定义的中文信息,想怎样显示就怎样显示,只需修改相关程序即可。(不好意思,隐私问题,打了格子)

 

  如果是电话簿以外的来电,就显示以下信息。

 

  反正编程不用钱,干脆就增加多一个查询电话簿的功能。按板子旁边的一个小按钮,就能转入查询功能,然后输入号码,就能显示该号码所对应的相关中文信息。

 

  这个设计使用51系列的单片机,由于没有外置的ROM,能存多少电话簿信息就要看该单片机的内部ROM,不过64K的ROM就能存储上千组的电话簿,完全够用了。本人这个存储了本单位的所有部门电话和个人手机号码,也就几百组电话簿信息,所以容量完全够用。

  整个装置硬件成本一百多元,不算贵,也不便宜,不过也算实用。另外,外部电源就直接并在原来电话上的那个电源就行了,没有的话十元买个电源回来,插上去就能用。大家不用担心,不会有用电安全问题,这些都是几伏的低压工作,而且非常省电。本装置已运行13个月以上没出现过任何故障。

  八、总结

  以上是本人的一个业余的电子设计制作的实例,提供基本的设计理念和思路,希望能对大家有所帮助,也希望能能抛砖引玉,大虾们能提供更好的改进意见。

上面的是全文以及一些图片 麻烦各位大能帮忙

这个别人做出来跟你直接买个现成的玩有什么区别,要想学东西,就自己搞

搞都想自己搞的 确实是因为平时水平差 好多看不懂 所以才求教 这东西不可能一下学会 我就想慢慢的 一步步分解回去 不能说全部搞懂 至少懂一点就好了

受教了,好东西

这个不错,感谢分享

可以发程序参考一下吗!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top