王正伟

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

上周重新开始4G Cat.1模组openCPU开发,初步熟悉EC718S SDK,对PLAT熟悉和了解。

## PLAT目录代码结构分析

基于对代码的详细检查,这是一个 EC718 CAT1芯片的SDK平台目录 ,具备完整的嵌入式开发环境。以下是详细的结构分析:

### 1. 总体架构

PLAT目录是一个典型的 嵌入式系统SDK ,采用 分层模块化设计 ,支持多种编译工具链(GCC和ARMCC)。

### 2. 核心目录结构 构建与配置层

– 根目录文件 :

  – Makefile – 主构建文件,定义gccall、clean-gccall等构建目标

  – 多个批处理文件: GccBuild_ec716e.bat 等,支持不同芯片型号的编译

  – SdkRelease.bat – SDK发布脚本

  – cmd.lnk – 链接配置文件

“`硬件抽象层(driver)

driver/

├── board/ec7xx_0h00/     # 板级支持包

├── chip/ec7xx/           # 芯片级驱动

└── hal/                  # 硬件抽象层

    ├── common/           # 通用HAL

    └── ec7xx/            # EC7xx专用HAL

“` 中间件层(middleware)

这是系统的核心部分,包含多个子模块:

自主开发中间件(developed) :

– at/ – AT命令处理系统

  – atcust/ – 自定义AT命令

  – atdecoder/ – AT命令解析器

  – atentity/ – AT实体处理

  – atps/ – PS相关AT命令

  – atref/ – AT命令参考实现

  – atreply/ – AT响应处理

– tcpipmgr/ – TCP/IP协议栈管理

– nvram/ – 非易失性存储管理

– fota/ – 固件空中升级(FOTA)

– cms/ – 通信服务模块

– debug/ – 调试系统

第三方组件(thirdparty) :

– lwip – 轻量级TCP/IP协议栈

– mbedtls – 安全套接字层

– mqtt – MQTT客户端

– httpclient – HTTP客户端

– littlefs – 小型文件系统

“`操作系统层(os)

os/freertos/

├── CMSIS/        # ARM Cortex-M软件接口标准

├── inc/          # 头文件

├── portable/     # 移植层

└── src/          # 源代码

“` 应用层(project)

project/ec7xx_0h00/ap/apps/

├── at_command/          # AT命令应用示例

├── bootloader/          # 引导加载程序

├── driver_example/      # 驱动示例

└── spi_2boards/         # SPI通信示例

### 3. 应用示例分析

查看 at_command 应用的 app.c ,可以看到典型的嵌入式应用结构:

void main_entry(void)

{

    BSP_CommonInit();           // 板级初始化

    osKernelInitialize();       // 操作系统初始化

    registerAppEntry(appInit, NULL);  // 注册应用入口

    if (osKernelGetState() == osKernelReady)

    {

        osKernelStart();        // 启动内核

    }

    while(1);

}

### 4. 关键特性

AT命令系统

– 模块化AT命令处理架构

– 支持自定义AT命令扩展

– 完整的命令解析和响应机制

通信功能

– 支持多种通信协议(TCP/IP、HTTP、MQTT、SSL)

– 集成三大运营商认证模块(电信、联通、移动)

存储管理

– NVM(非易失性存储)管理

– 配置信息持久化

– 支持FOTA升级

调试系统

– 统一的日志系统

– 多级别调试输出

– 支持Unilog调试协议

### 5. 开发流程

1. 配置阶段 :通过 mw_common.h 等头文件配置系统参数

2. 编译阶段 :使用GCC或ARMCC工具链

3. 运行阶段 :FreeRTOS调度多任务执行

4. 调试阶段 :通过AT命令和日志系统调试

### 6. 适用场景

这是一个专为 物联网设备 设计的完整SDK,特别适合:

– CAT1通信模组开发

– 工业级物联网应用

– 需要AT命令控制的产品

– 支持运营商认证的设备

整个SDK展现了一个 专业级嵌入式系统 的完整架构,从底层驱动到上层应用都有完善的模块化设计,是EC718芯片开发的核心平台。王正伟-A

 

posted on 2025-11-15 16:10  王正伟  阅读(2)  评论(0)    收藏  举报