一、给工程模板添加文件
1、按照文章生成工程模板:ESP8266学习【2】——工程项目编译及工程模板创建
2、添加 uart 驱动文件,代码结构如下:
3、在user_main.c 的 user_init 函数添加以下内容:
void ICACHE_FLASH_ATTR
user_init(void)
{
//uart_init(115200,115200); //初始化波特率
os_printf("\r\n---------------------------------\r\n");
os_printf("SDK version:%s\n",system_get_sdk_version()); // 串口打印SDK版本
uart0_sendStr("\r\nHello World\r\n");
os_printf("\r\n---------------------------------\r\n");
}
其中,uart_init(115200,115200) 可以修改 uart0 和 uart1 的波特率 。
添加的头文件:
#include "ets_sys.h"
#include "osapi.h" //os_xxx接口
#include "user_interface.h" //系统接口
#include "driver/uart.h"
相关API函数:
二、编译与烧录
1、先 Clean Project 清理项目,再 Build Project 编译项目,编译成功:
2、按照文章烧录固件:ESP8266学习【3】——固件烧录及相关参数说明
三、输出测试
1、打开串口助手,波特率74880
2、复位模块
3、看到输出hello world 即测试成功。
输出参数说明:
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
rst cause:
1:电源重启
2:外部复位
4:硬件看门狗复位
boot mode:
第一个参数代表当前的 boot 模式;第二个参数与 SDIO 相关。
运行模式正常log输出应该是 boot mode:(3,n)。
Boot 模式由 strapping 管脚值 [GPIO15,GPIO0,GPIO2] 共同决定。如下表所示:
Strapping 管脚值 | [GPIO15,GPIO0,GPIO2] | Boot 模式 |
---|---|---|
0 | [0,0,0] | Remapping |
1 | [0,0,1] | UART Boot |
2 | [0,1,0] | Jump Boot |
3 | [0,1,1] | Flash Boot |
4 | [1,0,0] | SDIO LowSpeed V2 IO |
5 | [1,0,1] | SDIO HighSpeed V1 IO |
6 | [1,1,0] | SDIO LowSpeed V1 IO |
7 | [1,1,1] | SDIO HighSpeed V2 IO |