搜索
bottom↓
回复: 59

基于MSP430F5342单片机的SIM900 GPRS 数据透明传输模块

  [复制链接]
(268133762)

出0入0汤圆

发表于 2013-7-25 13:49:10 | 显示全部楼层 |阅读模式
之前自己发过帖子关于sim900模块的使用。
这次做了个sim900的透明传输模块,再次提供原理图以及源码,供大家参考学习。
单片机430F5342,gprs模块sim900,系统采用ucos 2.92版本;
开发环境IAR。
源码部分,有个lib库不开源。核心操作AT操作sim900全部开源



















本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(268131708)

出0入0汤圆

发表于 2013-7-25 14:23:24 | 显示全部楼层
本帖最后由 ljt80158015 于 2013-7-25 14:46 编辑

楼主有实现永久在线的功能吗?就是掉线自动重连。
(268131386)

出0入0汤圆

发表于 2013-7-25 14:28:46 | 显示全部楼层
基本在跟楼主做一样的东西
(268036980)

出0入0汤圆

 楼主| 发表于 2013-7-26 16:42:12 | 显示全部楼层
ljt80158015 发表于 2013-7-25 14:23
楼主有实现永久在线的功能吗?就是掉线自动重连。

永久在线,掉线重联,同时心跳包维持在线。
(268035182)

出0入0汤圆

发表于 2013-7-26 17:12:10 | 显示全部楼层
34071417 发表于 2013-7-26 16:42
永久在线,掉线重联,同时心跳包维持在线。

心跳包是ping包实现的吗?
(268018177)

出0入0汤圆

 楼主| 发表于 2013-7-26 21:55:35 | 显示全部楼层
ljt80158015 发表于 2013-7-26 17:12
心跳包是ping包实现的吗?

不是,主动向服务器发送数据包。数据包可以包含一些公共信息,比如终端ID,同步时间等。
(267979519)

出0入0汤圆

发表于 2013-7-27 08:39:53 | 显示全部楼层
34071417 发表于 2013-7-26 21:55
不是,主动向服务器发送数据包。数据包可以包含一些公共信息,比如终端ID,同步时间等。 ...

主动向服务器发送数据包?
tcp 还是 udp?

那服务器那边必须有一个对应的程序咯?
(267978312)

出0入0汤圆

发表于 2013-7-27 09:00:00 来自手机 | 显示全部楼层
不错,马克来看下
(267977597)

出0入0汤圆

发表于 2013-7-27 09:11:55 | 显示全部楼层
mark,,GPRS..
(267960200)

出0入0汤圆

 楼主| 发表于 2013-7-27 14:01:52 | 显示全部楼层
ljt80158015 发表于 2013-7-27 08:39
主动向服务器发送数据包?
tcp 还是 udp?

对的。tcp udp采用那种连接无所谓。维持在线主要还是tcp连接
(267957545)

出0入0汤圆

发表于 2013-7-27 14:46:07 | 显示全部楼层
不错!标记!
(267896636)

出0入0汤圆

发表于 2013-7-28 07:41:16 来自手机 | 显示全部楼层
34071417 发表于 2013-7-27 14:01:52

对的。tcp udp采用那种连接无所谓。维持在线主要还是tcp连接

但是一般透传dtu的心跳,永久在线,服务器都不需要与之对应的程序的。
(267895088)

出0入8汤圆

发表于 2013-7-28 08:07:04 | 显示全部楼层
楼主太棒了,叙述组织的太好了,非常感谢
(267888019)

出0入0汤圆

发表于 2013-7-28 10:04:53 | 显示全部楼层
工作电流好像蛮大
(267886207)

出0入0汤圆

发表于 2013-7-28 10:35:05 | 显示全部楼层
我也在和楼主做类似的东西,用的MSP430F1611+SIM900A,主要要求就是低功耗
(267883120)

出0入0汤圆

发表于 2013-7-28 11:26:32 | 显示全部楼层
不错,收了
(267863830)

出0入0汤圆

 楼主| 发表于 2013-7-28 16:48:02 | 显示全部楼层
ljt80158015 发表于 2013-7-28 07:41
但是一般透传dtu的心跳,永久在线,服务器都不需要与之对应的程序的。

心跳包数据服务器开着就行,可以不用处理,只是用于不被基站踢掉连接。
(267863764)

出0入0汤圆

 楼主| 发表于 2013-7-28 16:49:08 | 显示全部楼层
lkl10800139 发表于 2013-7-28 10:04
工作电流好像蛮大

工作起来是的,gprs在线都要20ma,如果实际待机,关机状态,平均功耗还是很低的
(267862593)

出0入0汤圆

发表于 2013-7-28 17:08:39 来自手机 | 显示全部楼层
34071417 发表于 2013-7-28 16:48:02

心跳包数据服务器开着就行,可以不用处理,只是用于不被基站踢掉连接。

基站踢掉连接?不是很明白?
(267855246)

出0入0汤圆

 楼主| 发表于 2013-7-28 19:11:06 | 显示全部楼层
ljt80158015 发表于 2013-7-28 17:08
基站踢掉连接?不是很明白?

就是连接服务器后,没有和服务器有数据传输达到一定时间,基站会切断客户端和服务器的连接。我自己测过的一般2分钟多些就会断线
(267844046)

出0入0汤圆

发表于 2013-7-28 22:17:46 来自手机 | 显示全部楼层
34071417 发表于 2013-7-28 19:11:06

就是连接服务器后,没有和服务器有数据传输达到一定时间,基站会切断客户端和服务器的连接。我自己测过的一般2分钟多些就会断线

这个只是保证不被基站踢掉,如果真的掉线,通过什么判断并重新拨号?
(267800311)

出0入0汤圆

 楼主| 发表于 2013-7-29 10:26:41 | 显示全部楼层
ljt80158015 发表于 2013-7-28 22:17
这个只是保证不被基站踢掉,如果真的掉线,通过什么判断并重新拨号?

1. 发心跳包,发送失败,重新拨号;
2. 服务器主动切断连接,有close提示;再拨号
(267799216)

出0入0汤圆

发表于 2013-7-29 10:44:56 | 显示全部楼层
34071417 发表于 2013-7-29 10:26
1. 发心跳包,发送失败,重新拨号;
2. 服务器主动切断连接,有close提示;再拨号 ...

1. 发心跳包,发送失败,重新拨号;

服务器没有对应的程序,如何知道发送 成功 还是 失败 ?
(265615634)

出0入0汤圆

发表于 2013-8-23 17:17:58 | 显示全部楼层
谢谢哈 下来存到以后用的上,对GPRS很敢兴趣!
(265612978)

出0入0汤圆

发表于 2013-8-23 18:02:14 | 显示全部楼层
下载了,收藏了,谢谢。
(265377755)

出0入0汤圆

发表于 2013-8-26 11:22:37 | 显示全部楼层
东西看着不错。。。
(264174308)

出0入0汤圆

发表于 2013-9-9 09:40:04 | 显示全部楼层
留个记号。。
(264171338)

出0入0汤圆

发表于 2013-9-9 10:29:34 | 显示全部楼层
很好,再次顶。
(264163302)

出0入0汤圆

发表于 2013-9-9 12:43:30 | 显示全部楼层
MARK MSP430+SIM900
(264146676)

出0入0汤圆

发表于 2013-9-9 17:20:36 | 显示全部楼层
好贴做标记,以后一定会用到,顺便感谢楼主
(263569843)

出0入10汤圆

发表于 2013-9-16 09:34:29 | 显示全部楼层
好贴,留脚印!
(263181951)

出0入0汤圆

发表于 2013-9-20 21:19:21 | 显示全部楼层
收藏了,最近要用到,不过要改程序
(263179131)

出0入0汤圆

发表于 2013-9-20 22:06:21 | 显示全部楼层
最近正在研究GPRS模块,正好学习一下
(260934283)

出0入0汤圆

发表于 2013-10-16 21:40:29 | 显示全部楼层
楼主430和SIM900a的UART是直连的吗?没有电平匹配问题?
(260887970)

出0入0汤圆

发表于 2013-10-17 10:32:22 | 显示全部楼层
好帖子啊,谢谢楼主哈!
(260672808)

出0入0汤圆

发表于 2013-10-19 22:18:24 | 显示全部楼层
好主意。。。
(260327296)

出0入0汤圆

发表于 2013-10-23 22:16:56 | 显示全部楼层
谢谢楼主!随便问一下,配置参数是用什么方式来做到的?
(260204463)

出0入0汤圆

 楼主| 发表于 2013-10-25 08:24:09 | 显示全部楼层
keil51 发表于 2013-10-23 22:16
谢谢楼主!随便问一下,配置参数是用什么方式来做到的?

采用modbus协议,用个modbus助手,改对应的寄存器就行
(260203392)

出0入4汤圆

发表于 2013-10-25 08:42:00 | 显示全部楼层
请教下楼主,你在使用单片机和SIM900进行通信的时候,有没有出现过SIM900返回数据不正常的情况?比如返回的数据缺失了几位?
(260202677)

出0入0汤圆

发表于 2013-10-25 08:53:55 | 显示全部楼层
标记一下,用得到
(260173878)

出0入0汤圆

 楼主| 发表于 2013-10-25 16:53:54 | 显示全部楼层
bolizhicheng204 发表于 2013-10-25 08:42
请教下楼主,你在使用单片机和SIM900进行通信的时候,有没有出现过SIM900返回数据不正常的情况?比如返回的 ...

还没有,是不是你的串口接收部分的程序有问题之类的,导致接收不全。
你可以试试用电脑端的串口助手不断查询模块,看看缺失的概率有多大
(260172778)

出0入0汤圆

发表于 2013-10-25 17:12:14 | 显示全部楼层
mark!!!
(260171871)

出0入4汤圆

发表于 2013-10-25 17:27:21 | 显示全部楼层
34071417 发表于 2013-10-25 16:53
还没有,是不是你的串口接收部分的程序有问题之类的,导致接收不全。
你可以试试用电脑端的串口助手不断 ...

很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是到了GPRS那一部分,返回的数据就不完整。好郁闷...
(260151241)

出0入0汤圆

 楼主| 发表于 2013-10-25 23:11:11 | 显示全部楼层
bolizhicheng204 发表于 2013-10-25 17:27
很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是 ...

波特率多少?误差有多大?
(260151162)

出0入0汤圆

 楼主| 发表于 2013-10-25 23:12:30 | 显示全部楼层
bolizhicheng204 发表于 2013-10-25 17:27
很奇怪啊,我做的时候,串口调试助手调试没有问题。但是用STM32调试的时候,建立连接、GSM没有问题,但是 ...

串口两端电平是232的还是ttl的?
(259946239)

出0入4汤圆

发表于 2013-10-28 08:07:53 | 显示全部楼层
34071417 发表于 2013-10-25 23:12
串口两端电平是232的还是ttl的?

STM32和SIM900(我用的是SIM908),直接相连。就是初始化、GSM设置、通信都没有问题。到了GPRS那一部分的时候,返回的数据经常不完整。波特率9600
(259933526)

出0入0汤圆

发表于 2013-10-28 11:39:46 | 显示全部楼层
好东西,先标记一下,以后用的着!
(259920193)

出0入0汤圆

 楼主| 发表于 2013-10-28 15:21:59 | 显示全部楼层
bolizhicheng204 发表于 2013-10-28 08:07
STM32和SIM900(我用的是SIM908),直接相连。就是初始化、GSM设置、通信都没有问题。到了GPRS那一部分的 ...

这个我就不清楚了。SIM908有没有自适应波特率?
(250778103)

出0入0汤圆

发表于 2014-2-11 10:50:09 | 显示全部楼层
支持一下
(250691803)

出0入0汤圆

发表于 2014-2-12 10:48:29 | 显示全部楼层
不错!
lz用的IAR吗?怎么没有.EWW文件
(250681618)

出0入0汤圆

 楼主| 发表于 2014-2-12 13:38:14 | 显示全部楼层
maybug56 发表于 2014-2-12 10:48
不错!
lz用的IAR吗?怎么没有.EWW文件

ewp就行了
(248108649)

出0入0汤圆

发表于 2014-3-14 08:21:03 | 显示全部楼层
谢谢!!!!!!
(248107287)

出0入0汤圆

发表于 2014-3-14 08:43:45 | 显示全部楼层
这个标记一下,多谢分享!
(247571833)

出0入0汤圆

发表于 2014-3-20 13:27:59 | 显示全部楼层
学习一下。
(247558248)

出0入0汤圆

发表于 2014-3-20 17:14:24 来自手机 | 显示全部楼层
sim900,mark              
(201354847)

出0入0汤圆

发表于 2015-9-6 11:31:05 | 显示全部楼层
正要学习设计AT指令,下载了,多谢
(201238221)

出0入0汤圆

发表于 2015-9-7 19:54:51 | 显示全部楼层
mark。。。。
(201090169)

出0入0汤圆

发表于 2015-9-9 13:02:23 | 显示全部楼层
SIM900A 还是有点贵了。
(200388430)

出0入0汤圆

发表于 2015-9-17 15:58:02 | 显示全部楼层
好,马克一下下。。
(196698359)

出0入0汤圆

发表于 2015-10-30 08:59:13 | 显示全部楼层
标记一下,多谢分享!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 ( 公安交互式论坛备案:44190002001997 粤ICP备09047143号 )

GMT+8, 2022-1-22 23:25

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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