esp8266 gpio 控制(led与key使用)
现在介绍上个工程添加led控制与key控制,必须学会如何控制led,和key,我们才能把他应用到我们的想做的项目中去。。
关系到gpio,则需要看硬件原理图:
由上图可知,我们需要想操作led或者key,只需要配置gpio 0 ,gpio1即可。
现在先创建一个gpio 处理任务
void app_main(void)
{
//modify cdb 2019-12-19
// printf("SDK version:%s\n", esp_get_idf_version());
// Initialize NVS
esp_err_t ret = nvs_flash_init();
int i=0;
if (ret == ESP_ERR_NVS_NO_FREE_PAGES) {
ESP_ERROR_CHECK(nvs_flash_erase());
ret = nvs_flash_init();
}
ESP_ERROR_CHECK(ret);
//初始化wifi,并且联网
initialise_wifi();
//创建mqtt 处理线程
ret = xTaskCreate(&mqtt_client_thread,
MQTT_CLIENT_THREAD_NAME,
MQTT_CLIENT_THREAD_STACK_WORDS,
NULL,
MQTT_CLIENT_THREAD_PRIO,
NULL);
if (ret != pdPASS) {
DBG_C("mqtt create client thread %s failed\n", MQTT_CLIENT_THREAD_NAME);
}
//创建gpio led key 处理任务
ret = xTaskCreate(&gpio_task,