请教:大伙用sim900或者esp8266等等,是怎样写的程序

2019-12-11 18:40发布

用AT指令,在发送了指令后要等待串口回复(比如:OK , GOT TO IP,等等),主要是这个等待的时候从几百到几十秒不等(网络回复时间慢),在等待的时候不可能就在那里等吧,搞了几种方式,感觉都不得要领,请问大伙是怎样搞的?
最好的是用小型的操作系统,因为用delay时会释放CPU给其它任务用。
用状态机的话,看着一堆case,头皮发麻。
啥都不用,直接等,只能在初始化的时候用,大循环用不了了。。
头疼。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
28条回答
cc2666
1楼-- · 2019-12-12 11:19
wxws 发表于 2019-4-11 16:40
楼主问的就是使用at 指令的.

AT 等待的处理确实是麻烦的要死,所以一定要用个类似OS或OS来处理程序 ,不然MC ...

我艹,我就是这么干的,你怎么知道的
eaglelpx
2楼-- · 2019-12-12 15:35
不是有STM32的串口空闲中断吗。
磊磊映画
3楼-- · 2019-12-12 21:06
jssd 发表于 2019-4-12 09:11
看了。正点原子的也是等待回复了。死等+超时。如果用操作系统,这样写就OK的了。但我没用操作系统,自己 ...

我记得服务器下发下来的指令是先缓存到通信模块里的, 每次需要主动去询问有没有消息下来。
jssd
4楼-- · 2019-12-12 21:26
wxws 发表于 2019-4-11 16:40
楼主问的就是使用at 指令的.

AT 等待的处理确实是麻烦的要死,所以一定要用个类似OS或OS来处理程序 ,不然MC ...

现在用的是STM32F103跟ESP8266还有2G,4G模块通讯。ESP8266还可以搞一下,2G,4G就没法了,还是AT指令
之前用过freeos,但不是太熟,感觉不太好。所以还是用状态机
aozima
5楼-- · 2019-12-12 22:25
 精彩回答 2  元偷偷看……
jssd
6楼-- · 2019-12-13 02:40
lcw_swust 发表于 2019-4-11 15:21
看这个“小小调度器”似乎挺有意思,把switch case 玩得出神入化,我还没理解透。
https://www.amobbs.com/ ...

小小调度器弄过了下,有个问题不知道怎样解决,看下面的帖子57楼。
小小调度器1.1重新整理版,8位16位32位可以选择定义
https://www.amobbs.com/thread-5702323-1-1.html
(出处: amoBBS 阿莫电子论坛)

一周热门 更多>