急求单片机控制GPRS模块程序
急求单片机向SIM300或其他SIMCOM系列模块写AT指令的C程序单片机最好是C8051F930其他的也行我是个菜鸟女生弄这东西又太费劲大家帮帮忙吧弄了快一个月没弄出来拜托大家了啊 AT+CGDCONT=1,"IP","CMNET"AT+CIPSTAT="UDP","202.102.154.3","8000"
AT+CIPSEND
>ABCD1234(CTRL+Z)
就OK了! 买个DTU更简单啦 先问问,串口有没有调通? 楼主先搞清楚怎样从串口发送一个字符,怎样发送一串字符;怎样接收一个字符,怎样接收一串字符吧。 请问谁写程序时对GPRS返回的数据进行判断了呢?比如哪一条是否返回ok,是否已连接上? 串口还没哦现在连T2定时器设置波特率都没弄出来哦0 【5楼】 xueyingmixin
这些信息不判断,如何知道模块当前的状态,比如:如何知道有没有注册网络,有没有连接到主机,如何断线重连.发送失败如何重发? 【6楼】 coolwujiaqi
串口还没哦现在连T2定时器设置波特率都没弄出来哦0
///////////////////////////////////////////////////////
那就先把串口调通吧,先不要说什么GPRS. 无图无真相 先研究通信吧 谢谢七楼:我先来回答你的问题吧!
1.如何知道有没有注册网络,AT+CREG?
2.有没有连接到主机,AT%IPOPEN="UDP","111.11.111.111",10,5000,10
CONNECT,就算是连上主机了吧?
3.如何断线重连.如果有心跳包在不断的发送是保持常在线,如果断线了,重新发上一条。
4.发送失败如何重发? 这个还真不知道
不知道回答的正不正确,还请指正。
我的问题吧,就是哪怕不是每条AT指令要判断一下,但是还是要在一些关键的AT指令上判断吗?这个就需要中断接收
置标志位,比如发送一条AT指令,返回的是AT OK,O在第六个字节上,但是我们接收函数有时很正常接收到,有时就不是这样,
如果想判断返回的是否是OK,挺难的,弄了很久了。
看到了苹果猫老师写的透明传输的程序,有判断,很详细,功能多。但是我用的是ICC,结果还是一头雾水。 【11楼】 xueyingmixin
我认为 你说的思路都是正确的!
至于判断返回的数据分析,可以调用库函数的字符串比较函数,或者自己写一个类似功能的函数,单靠第几位是不能正确判断的.因为我在测试时发现,就算你发的数据全部正确,GPRS模块也可能给出预想不到的结果.
苹果猫 代码很有启发性,你可以多参考下. 例如:这是一段测试是否连接成功的代码.
使用MSP430F247,IAR编译环境.
接收数据在REC_BUF数组里,使用GPRS_wait_count 在定时器做超时记时.
//------------------------------------------------
pt = strstr(REC_BUF, "CONNECT OK");
//pt = strstr(REC_BUF, "REG:");
if (pt != NULL)//
{
return 1;
}
pt = strstr(REC_BUF, "ERROR");
if (pt != NULL)//
{
return 0;
}
pt = strstr(REC_BUF, "+PDP: DEACT");
if (pt != NULL)//
{
return 0;
}
k = 0 ;
if(GPRS_wait_count == 0) //超时
return 0; 嗯,这个程序挺好,我试试去!我也一直在看苹果猫的程序。 苹果猫的程序上哪看啊 就在本论坛http://www.ouravr.com/bbs/bbs_content_all.jsp?bbs_sn=1908785 回复【楼主位】coolwujiaqi
-----------------------------------------------------------------------
不知道你还在不在这论坛了 我现在也在做这个相关课题是毕业设计 急求指导!!! GPRS里的心跳程序该怎么写呢?及数据的传输和接收程序??我用的是MC55模块,各位高手指导下?谢谢。。
页:
[1]