基于MSP430F5342单片机的SIM900 GPRS 数据透明传输模块
之前自己发过帖子关于sim900模块的使用。这次做了个sim900的透明传输模块,再次提供原理图以及源码,供大家参考学习。
单片机430F5342,gprs模块sim900,系统采用ucos 2.92版本;
开发环境IAR。
源码部分,有个lib库不开源。核心操作AT操作sim900全部开源
本帖最后由 ljt80158015 于 2013-7-25 14:46 编辑
楼主有实现永久在线的功能吗?就是掉线自动重连。 基本在跟楼主做一样的东西 ljt80158015 发表于 2013-7-25 14:23 static/image/common/back.gif
楼主有实现永久在线的功能吗?就是掉线自动重连。
永久在线,掉线重联,同时心跳包维持在线。 34071417 发表于 2013-7-26 16:42 static/image/common/back.gif
永久在线,掉线重联,同时心跳包维持在线。
心跳包是ping包实现的吗? ljt80158015 发表于 2013-7-26 17:12 static/image/common/back.gif
心跳包是ping包实现的吗?
不是,主动向服务器发送数据包。数据包可以包含一些公共信息,比如终端ID,同步时间等。 34071417 发表于 2013-7-26 21:55 static/image/common/back.gif
不是,主动向服务器发送数据包。数据包可以包含一些公共信息,比如终端ID,同步时间等。 ...
主动向服务器发送数据包?
tcp 还是 udp?
那服务器那边必须有一个对应的程序咯? 不错,马克来看下 mark,,GPRS.. ljt80158015 发表于 2013-7-27 08:39 static/image/common/back.gif
主动向服务器发送数据包?
tcp 还是 udp?
对的。tcp udp采用那种连接无所谓。维持在线主要还是tcp连接 不错!标记! 34071417 发表于 2013-7-27 14:01:52 static/image/common/back.gif
对的。tcp udp采用那种连接无所谓。维持在线主要还是tcp连接
但是一般透传dtu的心跳,永久在线,服务器都不需要与之对应的程序的。 楼主太棒了,叙述组织的太好了,非常感谢 工作电流好像蛮大 我也在和楼主做类似的东西,用的MSP430F1611+SIM900A,主要要求就是低功耗 不错,收了 ljt80158015 发表于 2013-7-28 07:41 static/image/common/back.gif
但是一般透传dtu的心跳,永久在线,服务器都不需要与之对应的程序的。
心跳包数据服务器开着就行,可以不用处理,只是用于不被基站踢掉连接。 lkl10800139 发表于 2013-7-28 10:04 static/image/common/back.gif
工作电流好像蛮大
工作起来是的,gprs在线都要20ma,如果实际待机,关机状态,平均功耗还是很低的 34071417 发表于 2013-7-28 16:48:02 static/image/common/back.gif
心跳包数据服务器开着就行,可以不用处理,只是用于不被基站踢掉连接。
基站踢掉连接?不是很明白? ljt80158015 发表于 2013-7-28 17:08 static/image/common/back.gif
基站踢掉连接?不是很明白?
就是连接服务器后,没有和服务器有数据传输达到一定时间,基站会切断客户端和服务器的连接。我自己测过的一般2分钟多些就会断线 34071417 发表于 2013-7-28 19:11:06 static/image/common/back.gif
就是连接服务器后,没有和服务器有数据传输达到一定时间,基站会切断客户端和服务器的连接。我自己测过的一般2分钟多些就会断线
这个只是保证不被基站踢掉,如果真的掉线,通过什么判断并重新拨号? ljt80158015 发表于 2013-7-28 22:17 static/image/common/back.gif
这个只是保证不被基站踢掉,如果真的掉线,通过什么判断并重新拨号?
1. 发心跳包,发送失败,重新拨号;
2. 服务器主动切断连接,有close提示;再拨号 34071417 发表于 2013-7-29 10:26 static/image/common/back.gif
1. 发心跳包,发送失败,重新拨号;
2. 服务器主动切断连接,有close提示;再拨号 ...
1. 发心跳包,发送失败,重新拨号;
服务器没有对应的程序,如何知道发送 成功 还是 失败 ? 谢谢哈 下来存到以后用的上,对GPRS很敢兴趣!{:smile:}{:smile:}{:smile:}{:smile:} 下载了,收藏了,谢谢。 东西看着不错。。。 留个记号。。 很好,再次顶。 MARK MSP430+SIM900 好贴做标记,以后一定会用到,顺便感谢楼主 好贴,留脚印! 收藏了,最近要用到,不过要改程序 最近正在研究GPRS模块,正好学习一下 楼主430和SIM900a的UART是直连的吗?没有电平匹配问题? 好帖子啊,谢谢楼主哈! 好主意。。。 谢谢楼主!随便问一下,配置参数是用什么方式来做到的? keil51 发表于 2013-10-23 22:16 static/image/common/back.gif
谢谢楼主!随便问一下,配置参数是用什么方式来做到的?
采用modbus协议,用个modbus助手,改对应的寄存器就行 请教下楼主,你在使用单片机和SIM900进行通信的时候,有没有出现过SIM900返回数据不正常的情况?比如返回的数据缺失了几位? 标记一下,用得到 bolizhicheng204 发表于 2013-10-25 08:42 static/image/common/back.gif
请教下楼主,你在使用单片机和SIM900进行通信的时候,有没有出现过SIM900返回数据不正常的情况?比如返回的 ...
还没有,是不是你的串口接收部分的程序有问题之类的,导致接收不全。
你可以试试用电脑端的串口助手不断查询模块,看看缺失的概率有多大 mark!!!{:biggrin:} 34071417 发表于 2013-10-25 16:53 static/image/common/back.gif
还没有,是不是你的串口接收部分的程序有问题之类的,导致接收不全。
你可以试试用电脑端的串口助手不断 ...
很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是到了GPRS那一部分,返回的数据就不完整。好郁闷... bolizhicheng204 发表于 2013-10-25 17:27 static/image/common/back.gif
很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是 ...
波特率多少?误差有多大? bolizhicheng204 发表于 2013-10-25 17:27 static/image/common/back.gif
很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是 ...
串口两端电平是232的还是ttl的? 34071417 发表于 2013-10-25 23:12 static/image/common/back.gif
串口两端电平是232的还是ttl的?
STM32和SIM900(我用的是SIM908),直接相连。就是初始化、GSM设置、通信都没有问题。到了GPRS那一部分的时候,返回的数据经常不完整。波特率9600 好东西,先标记一下,以后用的着! bolizhicheng204 发表于 2013-10-28 08:07 static/image/common/back.gif
STM32和SIM900(我用的是SIM908),直接相连。就是初始化、GSM设置、通信都没有问题。到了GPRS那一部分的 ...
这个我就不清楚了。SIM908有没有自适应波特率? 支持一下 不错!
lz用的IAR吗?怎么没有.EWW文件 maybug56 发表于 2014-2-12 10:48
不错!
lz用的IAR吗?怎么没有.EWW文件
ewp就行了 谢谢!!!!!! 这个标记一下,多谢分享! 学习一下。 sim900,mark 正要学习设计AT指令,下载了,多谢 mark。。。。 SIM900A 还是有点贵了。 好,马克一下下。。 标记一下,多谢分享!
页:
[1]