ESP8266学习笔记②-----配置引脚

  •  序   

    通过烧录对应的固件进行测试引脚的功能以及进行程序的编写,通过这个我们可以控制IO口的电平的变化。使得ESP8266更加类似于一块单片机而不是一个WIFI的模块。

  • 需要什么

① 一台电脑

②一个LED

③一块ESP8266开发板(我用的是NodeMCU)

 

  • 遇到的坑ESP8266学习笔记②-----配置引脚_第1张图片

①引脚的配置出现错误,只记住了官方手册的配置而不去思考为什么这么配置。

②引脚文档没有去看,一个人瞎配。

  • 需要的文档

①首先是官方的编程文档

 

 

esp8266-technical_reference_c...
4.6 MB

 

 

 

 

②其次是引脚的配置文档

 

 

 

ESP8266_Pin_List.xls
105.5 KB

 

 

  • 程序的编写以及固件的烧录
#include "driver/uart.h" //串口0需要的头文件
#include "osapi.h" //串口1需要的头文件
#include "user_interface.h" //WIFI连接需要的头文件
#include "gpio.h" //端口控制需要的头文件

void delay_ms(uint16 x)
{
for(;x>0;x--)
{
os_delay_us(1000);
}
}

void user_init()//初始化
{

uart_init(76800, 76800);//设置串口0和串口1的波特率

PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U,FUNC_GPIO12);

GPIO_OUTPUT_SET(GPIO_ID_PIN(12), 1);//GPIO12为高

PIN_PULLUP_EN(PERIPHS_IO_MUX_MTDI_U);
while(1)
{
system_soft_wdt_feed();//这里我们喂下看门狗 ,不让看门狗复位


delay_ms(500);

GPIO_OUTPUT_SET(GPIO_ID_PIN(12), 0); //GPIO12为低

delay_ms(500);

GPIO_OUTPUT_SET(GPIO_ID_PIN(12), 1); //GPIO12为高

os_printf("hello world\n" );



}

}

void user_rf_pre_init()
{

}

上面的程序就是很简单的LED灯的闪烁,但是需要注意有几句话例如PERIPHS_IO_MUX_MTDI_U,以及PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U,FUNC_GPIO12);这样子的语句中的MTDI是GPIO12的功能各个引脚是不一样的:

ESP8266学习笔记②-----配置引脚_第2张图片
 

 

而且GPIO16的配置也是不一样的。

ESP8266学习笔记②-----配置引脚_第3张图片

烧录要用ESPFlashDownloadTool_v3.6.4这个软件。

 

ESP8266学习笔记②-----配置引脚_第4张图片

ESP8266学习笔记②-----配置引脚_第5张图片 

 

如上配置完成之后直接烧录就好了,这样就可以看到GPIO12的LED开始闪烁了,在我的开发板上面就是D6。

  • 感想

     我很喜欢一位博主的一句话:"每一次改变总需要一个开始。" 希望这个开始顺利些。我现在还得谢谢这位博主,我是看他的NodeMCU的教程入门的虽然自己也稍微修修改改了一些东西,但是主体框架其实也就是没改过的。我为这个博主打个广告吧,如果各位有学习NodeMCU的想法的话就去看这位博主的博客吧,是一位十分NICE的博主。如果想学习SDK的话这位的博客,也还不错。还有这位,他的Makefile文件的构成让我看的很舒服。(虽然没看懂233)。讲真看博客只是参考,切不可当教程。毕竟分享的人(也就是我)是真的菜~~

 

 

 


 


 

 

你可能感兴趣的:(ESP8266学习笔记②-----配置引脚)