3. ESP8266固件的编译(乐鑫原厂SDK)

时间:2024-04-10 09:10:47

一、SDK类型
ESP8266 SDK的基础平台按照是否基于操作系统可分为:
non-OS 和 RTOS 两种版本。
Non-OS SDK 是不基于操作系统的 SDK,提供 IOT_Demo 和 AT 的编译。
Non-OS SDK 主要使用定时器和回调函数的方式实现各个功能事件的嵌套,达到特定条件下触发特定功能函数的目的。Non-OS SDK 使用 espconn 接口实现网络操作,用户需要按照 espconn 接口的使用规则进行软件开发。

2)RTOS SDK 基于 FreeRTOS,在 Github 上开源。
• RTOS 版本 SDK 使用 FreeRTOS 系统,引⼊ OS 多任务处理的机制,用户可以使用
FreeRTOS 的标准接口实现资源管理、循环操作、任务内延时、任务间信息传递和
同步等⾯向任务流程的设计方式。具体接口使用方法参考 FreeRTOS 官方网站。

• RTOS 版本 SDK 的网络操作接口是标准 lwIP API,同时提供了 BSD Socket API 接
口的封装实现,用户可以直接按照 Socket API 的使用方式来开发软件应用,也可以
直接编译运行其他平台的标准 Socket 应用,有效降低平台切换的学习成本。

• RTOS 版本 SDK 引⼊了 cJSON 库,使用该库函数可以更加方便的实现对 JSON 数
据包的解析。

• RTOS 版本兼容 non-OS SDK 中的 Wi-Fi 接口、SmartConfig 接口、Sniffer 相关接
口、系统接口、定时器接口、FOTA 接口和外围驱动接口,不⽀持 AT 实现。

具体可参考如下文档:
http://espressif.com/sites/default/files/documentation/2a-esp8266-sdk_getting_started_guide_cn.pdf

二、固件说明
乐鑫可以支持在线固件升级,称为Firmware Over The Air(FOTA)。
与此相对的是传统固件类型,称为Non-FOTA。
固件有如下类型:
3. ESP8266固件的编译(乐鑫原厂SDK)

地址映射图如下:
3. ESP8266固件的编译(乐鑫原厂SDK)