初识 ESP8266

ESP8266EX芯片由 espressif乐鑫公司开发,提供了一套高度集成的 Wi-Fi SOC解决方案,其低功耗、紧凑设计和高稳定性可以满足用户的需求。乐鑫官网

而 ai-thinker 安信可公司基于 ESP8266EX芯片去设计了一系列 ESP8266 模组(基本上我们现在说的ESP8266多是指 ESP8266模组)。这些模组包括(具体可以参考:安信可ESP8266系列模组):

        而很多其他厂家又会基于 ESP8266系列模组 去设计 ESP8266开发板,其中使用广泛的就是基于 ESP-12F 模组的 NodeMcu开发板。NodeMCU是国内的一个团队做的,不仅仅可以使用Lua语言开发,更是设计出了NodeMCU这样很不错的硬件,某宝有售,价格不一。只不过比较可惜的是随着ESP8266在Arduino平台的快速崛起,NodeMCU现在已经很少有人关注了。不过团队设计的硬件还是非常好用的,可以很方便的插在面包上,进行各种外设的操作。

芯片-模组-开发板的关系:

乐鑫开发芯片

安信可开发模组

其他厂家开发开发板

开发方式:

    Arduino开发:

非常简单愉快的一种开发方式,非常适合具有Arduino基础的同学,极度推荐。

    MicroPython开发:

适合有Python开发基础的同学,不过更建议在ESP32上使用此种开发方式。

    Lua开发:

据我了解不是很多人会去考虑的开发方式,有点杀马特的感觉,除非你之前已经懂Lua语言,不然不建议。

    SDK开发:

官方极度推荐的开发方式。

    AT指令:

需要烧录AT固件,借助另外一款MCU进行控制,有点浪费ESP8266的天赋,只发挥了Wi-Fi功能的一种开发方式(类似于Wi-Fi转串口)。

    总体来说,我更推荐用Arduino开发或者SDK开发。

    现在也支持图形化编程,不过都是在Arduino或MicroPython基础之上封装的,其本质还是上面四种最主要的开发方式,AliOS-Things是阿里巴巴去年在Github上刚开源的一款操作系统,也支持ESP8266,但是与自家业务强相关,如果想要对接阿里平台可以去看看,我最近也在学习,并且成功接入飞燕平台。

ESP8266_Arduino

ESP8266_MicroPython

ESP8266-NonOS_SDK、ESP8266_RTOS_SDK

ESP8266_NodeMCU

ESP8266_AliOS-Things

SDK的基础平台按照是否基于操作系统可分为:Non-OS 和 RTOS 两个版本:

    Non-OS SDK: 是不基于操作系统的SDK,提供IOT_demo和AT的编译。Non-OS SDK主要使用定时器和回调函数的方式来实现各个功能事件的嵌套,达到特定条件下触发特定功能函数的目的。Non-OS SDK 使用espconn接口实现网络操作,用户需要按照espconn接口的使用规则进行软件开发。

    RTOS SDK:基于FreeRTOS,引入OS多任务处理机制。

    开发工具清单:https://docs.ai-thinker.com/tools

    ESP8266代码仓库:https://github.com/imliubo/makingfunxyz-esp8266


相关文章:安信可一体化开发环境v1.5安装、ESP8266 NONOS SDK 3.0导入编译、烧录