Skip to content

EmbATlink v2.0

Choose a tag to compare

@ZeroOneLab ZeroOneLab released this 24 Jul 14:58

EmbATlink v2.0 正式发布,本次大版本对框架进行了自底向上的重构,
API 不兼容 v1.x。

架构变更

  • 驱动层扁平化至项目根目录,Demo 从 HAL+CubeMX 切换为 StdPeriph Library(体积精简 95%+)
  • 修复文件命名:at_deriver.h → at_driver.h

API 不兼容变更

  • 用 at_channel_t 通道结构体替代旧版全局宏,缓冲区与 URC 关键字按通道配置
  • at_cmd_config_t 字段全面重命名,初始化由 at_init() 改为 at_channel_init(channel, cfg)
  • 所有端口函数新增 channel 参数,支持多通道适配

新增

  • at_recv_buf_swap() 支持 OTA 大数据场景零额外内存开销
  • at_recv_remove() 支持多条 URC 混在同一缓冲区时各自独立消费
  • at_resp_param_get() 支持 JSON 等含逗号字符串参数的安全提取
  • at_session_lock/unlock() 递归会话锁保护 RTOS 下多步事务原子性
  • 日志宏默认关闭,用户侧按需覆盖,消除强制 printf 依赖
  • 新增 at_port_send_line_ending() / at_port_recv_done() 按通道定制

资源占用

  • 驱动核心:~1.3KB Flash / 16 bytes RAM
  • Demo 工程总计:~8.6KB Flash / ~1.3KB RAM

从 v1.x 迁移

详见 README 中的 移植指南