我是靠谱客的博主 正直裙子,最近开发中收集的这篇文章主要介绍STM32通过4G模块实现TCP/UDP连接服务器STM单片机需要支持freeRTOS系统,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
STM32通过4G模块实现TCP/UDP连接服务器(附带源码)
- STM单片机需要支持freeRTOS系统
- TCP/UDP使用注意事项
- 解决办法
- 业务流程图
- F412源码下载地址
STM单片机需要支持freeRTOS系统
4G模块收发是异步操作,在发送的时候很有可能也会收到数据,如果只是单线程的话很容易导致丢数据,开发虽然简单,但是不够严谨,这样需要协议来实现重发才能保证业务正常进展,此处我们选择了F412这款芯片跑freeRTOS系统,启用多线程,一个收一个发,模块选择了国仪海聚科技有限公司的GH201系列模块作为测试
TCP/UDP使用注意事项
简单的demo很容易,但是我们实际应用中设备往往是无人值守的,这就需要产品非常稳定,自我恢复能力很强,下面介绍在使用通信模块过程中可能出现的异常:
- 网络异常,网络节点异常断电,底层链路极端环境未恢复
- 伪基站的干扰,注册失败
- 模块异常,导致网络假死
解决办法
针对上述异常情况,我们首先要考虑的是心跳,虽然tcp协议中底层是有心跳保证的,但是网络的复杂性,以及网络设备的兼容性,或多或少的存在一些问题,将自己产品的稳定性寄托在底层的链路上是不妥的
心跳
上层应用连接成功之后需要跟服务器保证间隔2min左右的心跳探测(此心跳时间可以设置更短,不宜太长)
模块设备异常恢复
防止4G模块设备在一些未知情况可能出现网络异常,网络假死,AT指令不通,此时需要对模块重新上电强制恢复工作
单片机异常恢复
防止单片机因为一些未知因素导致的死机而无法工作
业务流程图
F412源码下载地址
测试代码仅仅是简单的发送了一串测试字符,其他功能有待开发
链接: https://pan.baidu.com/s/1pb1A6RvOURrg8_bcKLH_Og 提取码: z2r2
最后
以上就是正直裙子为你收集整理的STM32通过4G模块实现TCP/UDP连接服务器STM单片机需要支持freeRTOS系统的全部内容,希望文章能够帮你解决STM32通过4G模块实现TCP/UDP连接服务器STM单片机需要支持freeRTOS系统所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复