CC3200循环连接http服务器,几次连接后就没动静了!
10秒钟一个循环,每次访问外部网站的过程为:开启WIFI -> 连接外部AP -> 连接http访问外部网站 -> 读取网页内容 -> 断开http连接 -> 关闭WIFI。前几次都能正确读取网页内容,然后每次都会执行到调用lRetVal = HTTPCli_getResponseStatus(cli);这句后就没有返回了。
请问这是啥情况,如何解决?
谢谢!
可以查看一下配置是不是有错误。
板子是自己做的还是购买官方的?
建议30秒一个循环测试吧。
另外问一下所浏览的网页内容多不?
看看你这些程序架构之外有其他处理吗?是不是配置程序中有改动?
没用过这个,但是思路大概是:分步调试,找出在哪里出现了问题,打印出足够的log信息或者设置断点。测试的循环时间可能有点短?会不会受网络环境的影响了?
10秒的循环是不是有点快啊,导致状态切换不及。
如果连接上没问题,估计就是循环时间太短,建议更改循环时间试试
正确读取网页内容 lRetVal = HTTPCli_getResponseStatus(cli);这句 也没有返回? 还有你访问的是什么网站,会不会是太频繁了,网页还没有完全刷新呢?为什么要这样子频繁的关闭WIFI啊?
我建议你不要断开WIFI ,先连续刷新网页看看 ,正常不正常。如果正常的话,就是重新启动WIFI这个环节有问题。
板子是淘宝上买的LaunchPad开发板。
浏览http服务器返回的内容很少,只有几个字符,每次重新连接WIFI并http访问到收到信息大约3~5秒钟,改成30秒循环结果一样。
网络连接是独立的任务,其它代码中也没有修改配置参数的地方。
通过打印信息跟踪,发现每次都是调用lRetVal = HTTPCli_getResponseStatus(cli);这句后任务就好像被挂起了,其它的任务正常运行。
谢谢各位关注!
现在不知从何下手...
可以参考一下这个,希望对你帮助
http://blog.csdn.net/hytgab/article/details/47113013
10秒钟一个循环太短。建义更长一点试。20S ,确认OK ,可以再改短。
10s循环有点快吧 调大点再试试
我觉得首先可以看看配置对不对,然后呢是wifi的启动速度是不是会经常不稳定。其次就是估计程序切换BANK的时候不行。暂时只能想到这些问题
这应该代码有问题,具体要看代码
网速慢导致跟不上,出现错乱
Wifi的东西不懂,来学习的
感谢各位网友提醒!
我把SL_POLICY_PM配置改为SL_ALWAYS_ON_POLICY,同时将循环周期改为30秒,跑起来就正常了。
本来想用SL_NORMAL_POLICY自动休眠,这下不知道怎样才能用好内部自带的休眠功能了...