ESP8266/ESP32下使用Blinker进行开发建议
# ESP8266/ESP32 硬件设计指南
使用ESP相关芯片或者ESP相关模组进行PCB设计时的注意事项详见如下官方文档。
如使用ESP模块时模块如何放置及模块天线周围电路隔离以减小电路对模块的影响。
- (https://www.espressif.com/sites/default/files/documentation/esp8266_hardware_design_guidelines_cn.pdf)
- (https://www.espressif.com/sites/default/files/documentation/esp32_hardware_design_guidelines_cn.pdf)
- (https://www.espressif.com/sites/default/files/documentation/esp32-s2_hardware_design_guidelines_cn.pdf)
- (https://www.espressif.com/sites/default/files/documentation/esp32-c3_hardware_design_guidelines_cn.pdf)
# Blinker Arduino下代码编写建议
- 使用 Blinker/Arduino 库进行开发时,设备端启动联网/从服务器端鉴权获取设备登陆信息/设备登陆及与云端通信等服务均在 Blinker.run() 中进行。编写代码时务必保证 loop() 代码中对 Blinker.run() 的频繁调用,若调用间隔太长将影响设备联网等正常运行。
- 使用 ESP32/Arduino 时可以单独启动一个任务来执行 Blinker.run() ,这样用户在 loop() 中的代码将不会影响 Blinker 部分代码的运行。
- 如果产品方向开发,建议使用ESP32系列的芯片或者模组,片上RAM等资源更多,满足设备固件加密/通信加密的需求。
- ESP8266/Arduino 是在 ESP8266_NONOS_SDK 基础上开发的,没办法使用多任务模式。ESP32/Arduino 是在 ESP_IDF_SDK 基础上开发的,可以使用多任务模式。
- 使用 ESP8266/Arduino 时建议使用非加密接入模式,以保证足够的剩余堆栈支持设备正常运行。(注:ESP8266/Arduino 3.0.0 SDK 启用了MMU 16KB cache + 48KB IRAM and 2nd Heap (shared) 后可以开启加密模式,但是暂未测试是否能保证设备长时间稳定运行)
页:
[1]