单片机控制手机的硬软件接口技术及其应用
引 言
在我国,拥有手机的用户已很普遍,更新也很快,价格也越来越低。因为其工作的无线网络覆盖范围广,在信息传递方面,性能稳定、可靠。所以把手机作为信息传递的载体,与单片机结合起来构成应用系统有着强大的生命力和广阔的应用空间,特别是在远程数据传输、远程监控等领域更是受到电子设计应用工程师的关注和采用。一些专业刊物也介绍了一些有关这方面的文章,然而由于手机的控制指令复杂,数据格式繁琐,工程技术人员在进行单片机与手机的硬软件接口设计时经常会遇到很多困难,有时还无资料可查。作者在完成一个项目的开发过程中,针对几种手机进行了大量的测试和实验,在此基础上归纳出一些带规律性的结论,对此结论,工程设计人员可拿来即用,大大缩短研发周期,现把它公布出来,愿与广大电子设计人员共享。
目前市场上流行的大部分手机几乎都具有数据引出口,并基本上都支持与GSM短信息相关的AT控制指令(GSM—SMS—AT指令),手机通过数据口以串行方式接收指令并向外输出数据。理论上讲,在数据口中找出RXD、TXD和GND引脚与单片机的串口对应连接即完成了硬件接口,然而,实际上由于不同品牌,不同型号手机的RXD、TXD和GNG引脚并非一致,找查这三根线有时也非易事,况且手机数据口的电平既不是RS232电平,也不是TTL电平,与由5V供电的单片机的串口还不能直接联接。最简单、最可靠的方法是使用手机的数据线建立单片机与手机的硬件连接。手机数据线是专为连接PC机9针串口而设计的,一是信号电平为标准的RS232电平,只要单片机的串口也转换为RS232电平,就可方便连接。二是9针串口引脚定义是固定的,即2 脚为TXD(手机发送),3脚为RXD(手机接收)、5脚为GNG,这样,无论什么型号的手机与单片机的连接就成了固定连接,不需要知道手机数据口信号的具体定义,二者通过数据线的连接电路如图1所示:
需要注意的是:不同手机数据线内部电平转换芯片的供电方式是不同的,有的是通过手机直接供电;有的是通过窃取PC机串口某些引脚(通常为4、6、7、8引脚)的电流经内部整流滤波稳压后提供,判断的方法是将数据线一端插到手机数据口,测量另一端2脚与5脚之间的电压,如果有-7V左右的电压,则为前者,如果测不出电压,则为后者,对于后者则需要单片机为4、6、7、8、引脚任意一引脚提供+5V电压即可,如图1中虚线所示。
单片机与手机的软件接口其实就是单片机通过与GSM短信息有关的AT指令控制手机的控制技术,如读取手机的短消息内容,删除短消息内容,列出手机中还未读的短消息等。关于AT指令的功能描述请读者参考“参考文献”所示的文章内容,此处不再赘述。然而,执行一条指令,也并非某些资料中介绍得那么简单,事实上,指令的执行过程需要单片机与手机交互应答完成,每一次发送或接受的字节数有严格的规定,二者必须依据这些规定实现数据交换,否则,通信就是失败的,作者经过对几种手机反复测试,总结出来一些规律,如表1所示:
评论