ESP8266 特点之一:内置低功耗 32 位 CPU:可以兼作应⽤处理器。
	ESP8266共有16个通用IO口,详细请看
GPIO寄存器表: ESP8266_GPIO_Register.xlsx
与引脚功能复⽤表: ESP8266_Pin_List.xlsx 
GPIO是最基本的数字管脚了。还记得普通的单片机的入门教程---点亮LED吗?
先来看看e板上的LED灯
	
只要让GPIO4脚间隔输出高低电平,就会闪烁了。 
手册有点不全面,详细请查看源码。
一:首先选择GPIO4管脚的复用功能为GPIO。
函数原型 PIN_FUNC_SELECT(PIN_NAME, FUNC)
GPIO4的PIN_NAME 宏定义为
	
 
		 
	#define PERIPHS_IO_MUX_GPIO4_U          (PERIPHS_IO_MUX + 0x3C)
#define FUNC_GPIO4                          0
#define FUNC_CLK_XTAL                       1
	
		
	
		
 
			 
				 从上面看到GPIO4有2个功能。
			 
				#define PERIPHS_IO_MUX			        0x60000800
		
			
				
			
函数原型GPIO_OUTPUT_SET(gpio_no,bit_value)
宏定义为
				
#define GPIO_OUTPUT_SET(gpio_no, bit_value) \
    gpio_output_conf(bit_value<
 
 
				
既可以输出高电平,也可以输出低电平。
三:修改入口函数内容
void user_init(void)
{	
	PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U,FUNC_GPIO4);
	
	while(1)
		{
			GPIO_OUTPUT_SET(GPIO_ID_PIN(4), 1);
			delay_ms(500);
			GPIO_OUTPUT_SET(GPIO_ID_PIN(4), 0);
			delay_ms(500);
			
	}
}
					
						
					
四:编译后烧录,可以看到LED没秒闪烁一次了。这只是最简单GPIO的使用,UART, HSPI, SDIO/SPI, I2C, ADC_IN, GPIO16, PWM and IR TX/RX这些你也可以去体验下。
			
			
			
						
			
 我要赚赏金
