首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于TC35i的PC机短消息收发模块
来源:本站整理  作者:佚名  2011-11-01 07:28:19



  短信息服务作为GSM系统为用户提供的一种基本数字业务,已经得到越来越多的系统运营商和系统开发商的重视,成为诸多领域远程监控的一种通信手段,很多应用场合需要通过PC直接控制短信息收发功能,完成系统的数据采集或远程信息传输,在一些偏远架设通信线路比较困难的地区,尤其需要用户直接通过PC控制短信息的远程传输。

  本文通过介绍西门子公司TC35iGSM的PC机短信息收发模块,详细阐述TC35i和PC之间的硬件连接及部分接口电路原理,PC通过软件编程利用AT指令控制模块工作,实现短信息的收发功能。该模块可应用于多个领域的远程信息传输系统,特别适用于需频繁传送小数据量的远程信息传输系统,如铁路远程信息传输、电力远程抄表和水利远程监控等领域。

  硬件设计

  针对TC35i模块与PC连接的电源接口、通信接口和控制接口等接口存在的一些问题,采取有效的方法实现两者硬件电路的连接,TC35i模块安装在PC内部,由PC电源供电,同时通过PC串行口实现数据交换,再经软件编程实现模块启动、关闭的收发功能。

  TC35i模块TC35i模块是西门子公司推出的一种无线通信模块,它是集射频电路、基带于一体,向用户提供标准的AT命令接口,为数据、语音、短信息和传真提供快速、可靠、安全的传输,方便用户的开发设计及应用。

  TC35i模块应用接口采用40脚的Zip插座,包含的引脚功能有:3.3~5.5V、峰值为2A的直流电源接口,模拟音频输入、输出接口,8个引脚的标准RS232信号接口,6个引脚符合GSM11.11标准的SIM卡连接、控制接口。本文应用4个接口,电源接口、控制接口、串行通信接口及SIM卡连接接口。

  系统结构  结构图如下图所示,

为增强系统的灵活性,TC35i模块直接由PC内部5V电源供电,PC与TC35i模块通过串行通讯的RxD、TxD和地线三线制完成通讯,串行通讯的DTR和RTS接口与TC35i模块的控制接口连接,实现 PC 通过软件对短信息收发模块的控制和数据交换。

  电源接口电路    电源接口电路如下图所示,

除提供整个模块的5V工作电压外,最主要的是为TC35i模块提供工作电压。

  TC35i模块工作电压为3.3~5V,稳定工作电压4.4V左右,在启动连接登陆网络的传输过程中要求电源能提供2A的峰值电流、不大于400mV的压降,因为在数据传输过程中当电压的波动大于400mV时,TC35i模块认为工作电压过低而自动关闭TC35i模块,因此在设计TC35i模块的电源时必须考虑电压下降的可能性,保证最小电压高于4V。PC直流输出电压通过比较电路与基准电压进行比较,误差电压由通/断时间比例控制电路调整直流输出电压,线路滤波器防止交流信号噪声输入,抑制电源内部产生的反馈噪声。

  控制接口电路控制接口电路的目的是利用PC串行通讯的DTR和RTS信号线分别控制TC35i模块IGT点火线和EMERGOFF强制关闭线)实现PC对TC35i模块的启动和关闭控制。启动TC35i模块时,为使TC35i模块上电10ms后(供电电压必须大于4V)正常工作,须在IGT引脚加时长至少为lOOms的低电平信号,该信号下降洽时间小于1ms,启动后IGT引脚的信号保持高电平;关闭TC35i模块时,须在EMERGOFF引脚加一个时长至少为3.2s的低电平信号。

  一般设计中,上述延时直接通过PC机软件编程即可实现整个模块的启动和关闭控制,但在实际设计过程中发现,PC启动过程中DTR引脚和RTS引脚存在一个约4s左右的波动,波形图如图3所示,如果该波动不滤除,将会引起TC35i模块的非正常启动,本接口电路采用RC延时电路和施密特触发器滤除该波动信号,部分控制接口电路如图4所示。

  数据通信接口电路数据通信接口电路完成短信息收发及与PC通信等功能,TC35i模块与PC串行口使用简单的三线制进行数据交换。因PC的RS232接口和TC35i模块串行接口的电平规范不同,本文使用简单的施密特触发器、稳压管和电阻实现RxD和TxD电平转换,电路如图5所示。

  软件设计通过VC++6.0语言实现软件编程,PC首先通过编程打开与TC35i模块相连的串行口,然后通过此串行口向模块发送各种AT指令,实现对TC35i模块的控制,完成短信息收发功能。

  串行口初始化在Windows环境下,常用编程实现串行口操作的方法除利用MSComm控件和某些现成的串行口通信外,还可以直接调用WindowsAPI实现,程序如(程序1):

  TC35i模块启动TC35i模块在系统上电10ms后,IGT引脚加时长至少100ms、下降沿时间小于1ms的低电平信号,完成模块的正常启动,模块启动时利用软件控制串行口DTR引脚的电平转换,DTR引脚的状态作为串行口的一个属性与波特率、数据位长度、校验位、停止位等一样保存在串行口的状态结构DCB结构中,设置DTR引脚状态时,只需保持串行口状态结构中的其他属性不变,控制程序如(程序2):

  在控制接口电路中为滤除DTR引脚的电平波动,利用硬件电路实现DTR引脚由低电平到高电平延时的,软件控制模块启动过程中需跨过相同的延时时间,模块启动程序如(程序3):

  AT命令   AT命令集是SMS的DTE-DCE接口标准,是用户控制TC35i模块工作的媒介,利用TC35i模块和进行TC35i模块二次开发都须向模块发送AT命令完成,TC35i模块的命令接口完全符合GSM07.05和GSM07.07规范。PC通过串行口向TC35i模块发送AT命令,同时接收模块对发送的返回信息通过对串行口的读、写操作实现模块的收发功能。串行口的发送、接收程序如(程序4):

  短信息收、发目前通过GSM无线模块收发短信息主要分为BLOCk模式、Text模式和PDU模式三种模式。

  Block模式已逐渐被PDU模式取代;Text模式收发短信息原理简单,程序实现比较容易,缺点是只能收发英文信息不能收发中文信息;PDU模式则完全可以解决这个问题,通过PDU编码的短信息内容既可以是英文信息也可以是中文信息。

  TC35i模块设置为PDU模式,通过向TC35i模块发送AT命令和PDU串完成短信息的发送,相应的AT命令为:AT+CMGS=<Length><CR>,其中Length为本条短信息发送字符的总长度,<CR>是回车符号即Ox0D,向TC35i模块发送此命令后,等待TC35i模块返回“>”

  ASCII字符,同时将已经编码的PDU串发送至TC35i模块,并以CTRl+Z(0x1A)结尾,TC35i模块接收到PDU串后开始发送短信息,短信息发送成功后TC35i模块返回<CRLF>OK<CRLF>,<CRLF>是回车换行符号。

  接收短信息时,TC35i模块根据用户的设置决定是否向用户发送短信息到达的提示,短信息到达提示的格式为:<CRLF>+CMTI:“SM”,lNDEX(信息存储位置)<CRLF>,用户收到短信息到达提示后,向TC35i模块发送:AT+CMGR=INDEX<CRLF>命令,读取相应短信息的PDU串。若用户设置TC35i模块时关闭了短信息到达件控制模块启动过程中需跨过相同的延时时间,模块启动程序如(程序3):

  Sleep(11000):∥跨过延时时间,此数值根据硬件电路可调DISAbLEDTR();}

  GSM07.07规范。PC通过串行口向TC35i模块发送AT命令,同时接收模块对发送的返回信息通过对串行口的读、写操作实现模块的收发功能。串行口的发送、接收程序如(程序4):

  //nLength:待读的最大数据长度∥返回:实际读入的数据长度intReadCom(void*pData,intnLength)∥接收程序{DWORDdwNumRead;//串行口收到的数据长度ReadFile(hComm,pData,(DWORD)nLength,&dwNumRead,NULL);return(int)dwNumRead;}

  提示,则用户可以利用AT+CMGL指令列出所有接收后未阅读的短信息,模块将返回所有未阅读的短信息的PDU串。

  TC35i模块关闭系统退出时须将TC35i模块关闭。

  TC35i模块提供两种关闭方式,系统正常退出时,利用AT^SMSO指令关闭TC35i模块,模块接收到AT^SMSO指令后,进行关机操作并返回^SMSO:MSOFF<CRLF>OK:当系统出现异常情况软件关闭失败时,利用TC35i模块的强制关闭功能,即TC35i模块停止响应的时间超过5秒时,在EMERGOFF强制关闭线加一个不小于3.2秒的低电平信号实现强制关机,即对PC机的串行口RTS线进行相应的操作。

  结束语

  本文实现了PC在TC35iGSM模块上的短信息收发功能,解决了PC启动时串行口不规则信号对模块的影响,软件实现了PC直接控制模块启动、关闭功能。短信息传输具有覆盖面广、自动传送、费用低、稳定性好等优点,正成为一种廉价、实用、高效无线数据双向传送、无线远程监测和控制的解决方案,同时结合TC35iGSM模块的系统设计结构简单,使用方便。

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:77,640.63000 毫秒