【4G】4G模块串口时隐时现的解决方法

使用4G模块进行二次开发时,有的群友碰到4G模块串口“时隐时现”的情况:


伴随系统发现新硬件的提示音,设备管理器中,串口经常“失踪”后又“诈尸”

Luatools也不能正确识别串口,无法打印任何Trace


通常,造成串口无法识别,或者频繁闪现的原因,是模块反复重启造成的。只有模块重启时,系统才会不断地“发现新硬件”。

那么,什么情况会造成模块反复重启呢?通常供电不足代码错误两个原因。


供电不足

针对供电不足导致重启的情况,建议开发者检查供电问题,如果是使用USB线供电,不要使用usb-hub,也不要插在前面板,尽量使用机箱后边的插口。尽量使用足够粗的microUSB数据线,避免压降导致供电不足(必要时,可以双插usb线增强供电),模块反复重启。必要时,建议使用示波器查看供电情况。


代码错误

代码错误导致的重启,通常AT模式不会遇到,只有Luat才会出现。

进行语法检测,可以有效避免由于代码错误导致的异常重启

开发者在下载Lua脚本,建议进行语法检测,避免常见的语法错误;另外可以使用UART1/2输出TRACE。


由于模块重启速度很快,但是Windows识别新硬件需要很久的时间,所以通常会错过模块输出的错误信息,没有错误信息就没有办法进一步跟踪调试程序。那么怎么办呢?

如果开发者没有使用UART1/2,那么可以使用UART1/2输出TRACE,打开串口调试助手查看模块输出的重启日志,进一步分析代码运行的错误(波特率115200)。

通过UART1/2查看TRACE,这样一来,就不会因为Windows识别新硬件速度慢,而错过模块输出的错误信息了。


仍然反复重启,且找不到错误原因,那么建议开发者使用S720开发板进行对比测试。通常可能是布线问题,供电问题等多种因素造成的反复重启。

如果开发者遇到无法解决又无法判断根源的反复重启问题,请参考文章:《关于Windows/Linux系统下如何用USB口抓取4G模块底层Trace?》

抓取到相关底层日志后,进QQ群交流:851800257

  • 发表于 2020-01-17 11:43
  • 阅读 ( 2349 )
  • 分类:默认分类

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
不写代码的码农
技术销售Delectate

43 篇文章

作家榜 »

  1. 技术销售Delectate 43 文章
  2. 陈夏 26 文章
  3. 国梁 24 文章
  4. miuser 21 文章
  5. 晨旭 20 文章
  6. 朱天华 19 文章
  7. 金艺 19 文章
  8. 杨奉武 18 文章