微信扫码关注

嵌入式是本职,AI 是兴趣,其它是无奈。

简介
AT command(V2) 一款管理AT命令通信交互组件, 适用于Modem、WIFI模块、蓝牙等使用AT命令或者ASCII命令行通信的场景,它涵盖了大部分AT通信形式,如参数设置,查询,二进制数据发送等,同时也支持自定义命令交互管理,由于它的每个命令请求都是异步的,所以对于无操作系统的环境也支持。相对于V1版本,新版本在命令接收匹配,URC不定长度数据捕获以及内存安全上做了大量优化,让它可以应对更多复杂产品应用。

基本特性

  • 所有命令请求都是异步的,无操作系统也可以运行。
  • 支持单行命令,批量命令,可变参数命令以及自定义AT命令。
  • 支持命令响应超时,错误重传,优先级管理。
  • 支持不定长度URC(未经请求主动主报)消息捕获。
  • 支持多个AT设备通信管理。
  • 支持内存使用监视与限制。
  • 支持命令请求的生命周期管理,实时监视命令执行状态。
  • 支持命令透传

系统要求
为了能够使AT命令正常通信,目标系统必须满足以下要求:

  • 动态内存支持。
  • RAM 资源:至少 1KB (取决于接收缓冲区与URC缓冲区的设置),建议在可分配3KB内存以上的系统中使用。
  • 编译器:系统中使用了一些C99的特性(柔性数组、内联),所以编译器需要开启对C99的支持。对于IAR,GCC它们默认是打开的,而Keil MDK需要手动增加编译选项(–c99 –gnu)。

新版本与V1版本区别
V1版本分成了两个模块,”at”模块仅适用于在OS环境下运行,而”at_chat”模块则适用于无操作系统的环境下运行,采用预分配内存的方式管理AT请求,不需要动态内存支持,也因为如此限制了其应用范围。虽然也可以在OS下运行,但是支持并不完善。V2版本主要是针对”at_chat”模块整体上进行优化,支持URC功能,同时也加强了对OS环境下的支持,由于使用动态内存方式管理AT命令请求,对于RAM的资源要求更高一些,但是使用上会更加便捷。

如何选择
如果使用的平台RAM资源(如8位单片机)有限,而且只用来做一些简单的AT通信,使用V1版本是比较合适的,而如果RAM资源充足,建议使用V2版本。

0已收藏
0已赞

评论 ( 0 )

微信扫码关注

qrcode

QQ号:123081755

回顶部