文章目录
-
- 1.前言
- 2. SDK概述
-
- 2.1 SDK使用流程
- 2.2 ESP8266 HDK —— 硬件开发工具
- 2.3 ESP8266 SDK —— 软件开发工具包
-
- 2.3.1 Non-OS SDK
- 2.3.2 RTOS SDK
- 2.4 ESP8266 FW
- 2.5 ESP8266 工具集
- 3. Non-OS SDK
-
- 3.1 下载 SDK
- 3.2 Non-OS SDK 目录结构
- 4. 软件环境搭建 —— 安信可一体化开发环境
-
- 4.1 简介
- 4.2 安装包下载
- 4.3 安装环境 IDE
- 5. SDK_Template模板工程
-
- 5.1 创建 SDK_Template
- 5.2 导入 SDK_Template
- 5.3 编译 SDK_Template
-
- 5.3.1 初次编译 SDK_Template —— 没办法,就是编译失败了
- 5.3.2 二次编译 SDK_Template
-
- 5.3.2.1 步骤1 先解决Clean Project的问题
- 5.3.2.2 步骤2 在解决 Build Project错误
- 5.4 构建SDK_Template,删除多余文件
-
- 5.4.1 处理driver文件夹
- 5.4.2 处理 include文件夹
- 5.4.3 处理user文件夹
- 5.4.4 最终SDK_Template
- 6.向世界 say Hello World!
-
- 6.1 01 Hello World
- 6.2 烧录Bin文件
- 7.总结
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力。希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石。。。
共同学习成长QQ群 622368884,不喜勿加,里面有一大群志同道合的探路人
快速导航
单片机菜鸟的博客快速索引(快速找到你要的)
如果觉得有用,麻烦点赞收藏,您的支持是博主创作的动力。
1.前言
ESP8266EX芯片由espressif乐鑫公司开发,提供了一套高度集成的Wi-Fi SOC解决方案,其低功耗、紧凑设计和高稳定性可以满足用户的需求。
而ai-thinker 安信可公司基于 ESP8266EX芯片去设计了一系列ESP8266 模组(基本上我们现在说的ESP8266多是指 ESP8266模组)。这些模组包括:
- 乐鑫开发芯片
- 安信可开发模组
- 其他厂家开发开发板
为了学习ESP8266编程,我们首选的开发板就是 NodeMcu Esp8266开发板。
而软件开发方式则分为几种:
-
AT指令
需要烧录AT固件,借助另外一款MCU进行控制,有点浪费ESP8266的天赋,后面博主专门写一个帖子专门介绍一下 -
Lua开发
据我了解不是很多人会去考虑的开发方式,有点杀马特的感觉,除非你之前已经懂Lua语言,不然不建议。 -
Arduino 开发
非常简单愉快的一种开发方式,非常适合具有Arduino基础的同学,博主也推出了一个专栏专门讲解 ESP8266 Arduino教程,极度推荐。 -
SDK开发
这也是官方极度推荐的开发方式,也是博主本系列重点关注的内容。 -
MicroPython开发
适合有Python开发基础的同学,不过更建议在ESP32上使用此种开发方式。
总体来说,我更推荐用Arduino开发或者SDK开发。接下来,就开始初步认识一下SDK开发流程。
2. SDK概述
2.1 SDK使用流程
3. Non-OS SDK
我们本系列主要是讲 Non-OS SDK的开发,那么首先第一步肯定要下载 SDK 文件。
3.1 下载 SDK
SDK 下载地址:https://github.com/espressif/ESP8266_NONOS_SDK/releases
记住,该SDK是不断迭代开发,到博主写本篇博文为止最新版本:
3.2 Non-OS SDK 目录结构
解压上面的SDK Zip包,可以得到以下结构:
documents:SDK 相关的文档或链接。
driver_lib:外设驱动的库文件,如:UART、I2C 和 GPIO 等。后面我们会把这里重命名为 app目录开发我们的用户程序。
include:SDK 自带头文件,包含了了用户可使用的相关 API 函数及其他宏定义(包括各种 络操作、系统操作等),用户无需修改。需要用到什么功能我们就引入对应的头文件。
lib:SDK 提供的库文件(这就是乐鑫官方牛逼的地方,封装好了各种方法调用)。
tools:编译 BIN 文件所需的?工具,用户无需修改。这里通过makefile来编译我们的代码生成固件。
4.3 安装环境 IDE
- 点击上面的 AiThinkerIDE_V1.0.exe 安装,注意安装路径中不要有中文或者空格
- 博主安装到D盘根目录,等待安装完成
至此,开发环境配置完毕。接下来:
-
找到刚才的安装路径,启动 IDE,这里建议读者建立桌面快捷方式:
-
默认情况下,初次安装完IDE之后,IDE会把空格显示出来,所以我们需要配置点环境,按照下面两图操作:
接下来开始编译第一个例子。
5. SDK_Template模板工程
首先,我们这里使用最新版本的官方SDK 3.0版本,这里默认读者已经把SDK文件下载下来。
SDK文件博主已经上传到个人QQ交流群,需要的请自行去下载。
基于 Non-OS SDK的开发方式,意味着我们需要基于SDK文件去开发我们的项目,所以建立一个通用的 SDK模板代码是比较科学的,我们后面也可以基于这个模板工程去自定义个人项目。
5.1 创建 SDK_Template
- 解压 ESP8266_NONOS_SDK-3.0 zip包
别怕,慢慢解决它,哪里有问题就搞哪里。
在SDK编程中,读者需要时刻牢记这是MakeFile编译。
在SDK编程中,读者需要时刻牢记这是MakeFile编译。
在SDK编程中,读者需要时刻牢记这是MakeFile编译。
重点的内容,博主强调三遍,请读者必须牢记于心。
5.3.2 二次编译 SDK_Template
5.3.2.1 步骤1 先解决Clean Project的问题
解决方法:
找到 官方事例 IOT_Demo,拷贝所有的文件,粘贴覆盖到app目录
再次,clean工程
这里意思就是 SPI_FLASH_SIZE_MAP 很可能被配置成了 0 或者 1。
SPI_FLASH_SIZE_MAP 是个什么鬼/p>
enum flash_size_map { FLASH_SIZE_4M_MAP_256_256 = 0, /** FLASH_SIZE_2M = 1, /** FLASH_SIZE_8M_MAP_512_512 = 2, /** FLASH_SIZE_16M_MAP_512_512 = 3, /** FLASH_SIZE_32M_MAP_512_512 = 4, /** FLASH_SIZE_16M_MAP_1024_1024 = 5, /** FLASH_SIZE_32M_MAP_1024_1024 = 6, /** FLASH_SIZE_32M_MAP_2048_2048 = 7, /** FLASH_SIZE_64M_MAP_1024_1024 = 8, /** FLASH_SIZE_128M_MAP_1024_1024 = 9 声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!