ESP8266开发入门
文章目录
- ESP8266开发入门
- 1、开发环境搭建
- 1.1、开发环境:windows10 + vscode
- 1.2、建立开发工程
- 1.3、开发资料
- 2、小试牛刀——串口使用
1、开发环境搭建
开发环境关键字:vscode、PlatformIO IDE、ESP8266 Non-OS SDK。
1.1、开发环境:windows10 + vscode
vscode软件安装以及常用的插件安装网上说明较多,不做说明。
vscode安装完成后,安装PlatformIO IDE插件,搜索关键字安装即可,安装过程受限境外网速影响,安装时间较长。
1.2、建立开发工程
点击PlatformIO插件,点击New Project。按如下配置完成后将自动建立开发工程,首次使用时vscode会自动下载需要的库文件,此过程也较为漫长。耐心等待。
工程建立成功后在 C:\Users\{username}\.platformio 路径中会增加工程使用的相关文件库目录,包括python3,packages等。
- 新建工程文件列表如下:
- 工程使用简介
在软件的左下角有如下图的一排图标,如图所示分别是:编译、下载固件、串口调试终端
工程建立完成后,编译工程,如果出现如下错误:
#include “user_config.h” ^ compilation terminated. In file included from C:\Users\xxxxx\.platformio\packages\framework-esp8266-nonos-sdk\driver_lib\include/driver/spi.h:30:0, from C:\Users\NeoNan.platformio\packages\framework-esp8266-nonos-sdk\driver_lib\driver\spi_overlap.c:26: C:\Users\xxxxx\.platformio\packages\framework-esp8266-nonos-sdk\include/osapi.h:30:25: fatal error: user_config.h: No such file or directory
需要编辑当前工程的platformio.ini文件,增加build_flags = -I include/,修改后编译通过。
[env:nodemcuv2]
platform = espressif8266
board = nodemcuv2
framework = esp8266-nonos-sdk
build_flags = -I include/ #新增修改
1.3、开发资料
开发资料可在乐鑫官网下载。
- ESP8266 技术参考手册
- ESP8266 SDK 入门指南 (仅针对旧版 SDK V2.X 及之前版本)
- ESP8266 Non-OS SDK API 参考
- ESP8266 SDK 入门指南
等资料,不一一列举。
2、小试牛刀——串口使用
工程建立完成后,我们尝试第一个功能,串口输出打印。
将路径C:\Users\{username}\.platformio\platforms\espressif8266\examples\esp8266-nonos-sdk-blink中的src目录和include目录下的文件,复制添加到我们自己的工程对应的目录中,分别是user_main.c和user_config.h文件。
在user_main.c文件user_init函数中,我们做如下修改:
void ICACHE_FLASH_ATTR user_init(void)
{
gpio_init();
uart_init(115200, 115200); //初始化串口波特率
os_delay_us(1000); //延时,等待串口稳定
os_printf("\r\n================================\r\n");
os_printf("SDK version:%s \r\n", system_get_sdk_version());//打印SDK版本号
os_printf("Hello World \r\n");
os_printf("\r\n================================\r\n");
}
修改完编译,下载到开发板中复位,使用串口调试助手查看输出的信息如下:
s$␀d��<␀�$�<␃␄␌␄�␄d�␄c|��␂�␓�{�#�␌#��'o�lo'���␌b␜p��$;drdp�o�␐␃␄␌�␄l␄␄␌␄␌␄#␌'�<␃�l�l�␜p␌��o'�␀$��d`␃�␛␓o'l�l`␃␏␂n;�ۛg␄␌#�␇l`�'␌␄␄��c�od�␄��ng�␀␄�␇dp�'�␘
␃␄␌{�����␄␄␌␄c␌'�<␃␌$�␌b��'g�␀d�␄l`␂�␒␛'o␄l`␂␎␂n;�ۛg␄␌␛�l`␂p�'�␘␃␄␌{������␄␌␄c␄'�<␃�$LJ�c��gn�␀␄␄l`␃�␛␛go␄l`␃␇␃';Ǜ�o␄␌��� ␃␇{��'␌␄��`␃��␃�␒�g�;��'|�␄l␄ld
l`␃␜c�␛␃␄�|␃s�␃l�g�␌�n�␀␄l`␂��s�d�d␓�
================================
SDK version:2.1.0(7106d38)
Hello World
================================
mode : null
前面打印的乱码是8266启动过程中串口波特率默认为76800,在串口初始化后,波特率修改为115200打印的信息输出显示正常。