物联网WIFI模块AT指令版本七大坑

电子说

1.2w人已加入

描述

前言

目前我们讨论的这个问题,并不是说WIFI方案不具备以应的功能。而是指在同一个AT指令固件下可能存在的问题。由于各厂商AT指令的开发深度不同,导致AT指令固件差异很大。我总结了一些问题,其中是否存在你认为AT指令不好用原因

一、底层库问题

由于原厂在开发过程中,会不断的修补SDK包中的BUG以及优化适配性能,致使你购买到的AT指令WIFI模块,还停留在以往旧版本SDK包的基础上设计。自然而然你使用的模块也会存在以往旧版本的问题。而这种情况在WIFI模块行业中特别严重,由于工厂生产的超前性以及库存的存在,往往你买的AT指令模块,烧录的不是基于最新SDK开发的固件。

二、指令格式无规律

如果只是单纯的指令命令无规律,这也不是致命的,因为单片机代码一但写成,这部分就不用人脑记忆。但是我指的指令没有规律,是指AT指令集回复结果的多样性,根本在数据手册中无法找全,如回复AT指令数据有大小写区分。还有一种情况很糟糕,就是在发送指令后等待回复时,中间夹渣了数据内容,这大大增加单片机应用开发者的难度!

三、指令回复响应性

一条AT指令发出去,回复的指令时间间隔忽长忽短。先不说不同指令,就算是同一条指令也有这种现象,单片机用户很难找到一个最长等待时间去设计代码。一但等待过去模块又回复了,这就对单片机的逻辑造成影响。还有一些AT指令,在快速输入指令后,可能会进入卡死状态,只有在重启后可以使用,这种情况多出现在早期版本的ESP8266的AT指令固件中。

四、指令交叉使用性

AT指令之间存在依赖性,如ESP系列的模块,连接一个TCP服务器,步骤必须是:设置STA模式、设置连接路由器账号密码、设置连接TCP服务器的IP地址和端口。只要指令不按步骤下去,功能无法实现。

五、配网功能缺失

在BLE+WIFI双模模块时代,应该保持具有BLE配网,airkiss配网,AT指令设置连接路由器账号密码及在AP状态下的内置网页配网功能。而市场上大部分模块只有其中一种或者几种功能,并不能全功能具备,导致在不同环境下的配网功能缺少无法连接路由器。

六、透传功能封包慢

这个是整个行业的通病,目前整个行业透传封包速度在50ms。我们知道对于模块来说,模块无法通过串口数据判断串口数据的开始和结束,所以封包数据越长,则模块设计难度越大,而对于用户来说,就会把数据的延时至少放大50ms。而对于单片机设计者来说,在透传状态下至少发下一条数据的需要等待50ms以上。

七、协议层功能缺失

目前市场上大部分的WIFI模块只支持UDP,TCP客户端,TCP服务器的功能。而TCP服务器状态下也无法进行透传功能。部分新开发的模块可以支持HTTP和MQTT功能,但是无法支持HTTPS和MQTTS等功能,导致应用环境大大缺失。未来是信息安全的时代,HTTPS和MQTTS对于物联网来说,势在必行!

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分