前言

  官方提供了两个函数

  

  

GPIO_OUTPUT_SET(gpio_no, bit_value)

设置GPIO2输出高电平

GPIO_OUTPUT_SET(2, 1);

设置GPIO2输出低电平

GPIO_OUTPUT_SET(2, 0);

GPIO_OUTPUT(gpio_bits, bit_value)

官方提供的一次性设置多个引脚函数

设置GPIO2和GPIO5输出高电平

GPIO_OUTPUT(BIT2 | BIT5, 1);

设置GPIO2和GPIO5输出低电平

GPIO_OUTPUT(BIT2 | BIT5, 0);

开发板原理图

  一,LED(GPIO2)

    

  二,继电器(GPIO5)

    

  

不过正常流程是先设置这个引脚的功能

PIN_FUNC_SELECT(IO口的寄存器地址 , 功能)

举例1:配置 GPIO2作为普通IO

  PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U , FUNC_GPIO2);

举例2:配置 GPIO2作为串口功能

  PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U  , FUNC_UART1_TXD_BK );

  说一下: FUNC_UART1_TXD_BK 这个我具体也不知道是什么意思,只知道可能是作为串口1的TX输出

举例3:配置 GPIO5作为普通IO功能

  PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5 );

注: 这一个是默认的功能

  

  注:在配置完PIN_FUNC_SELECT 以后,当前引脚为高阻态,既不是高电平也不是低电平.

  

测试(GPIO2输出高电平点亮LED)

#include "gpio.h"

PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U , FUNC_GPIO2);

GPIO_OUTPUT_SET(2, 1);//设置GPIO2输出高电平

测试(GPIO2输出低电平,GPIO5输出高电平控制继电器吸合)

#include "gpio.h"

GPIO_OUTPUT_SET(2, 0);//设置GPIO2输出低电平

GPIO_OUTPUT_SET(5, 1);//设置GPIO5输出高电平

测试(GPIO2输出低电平,GPIO5输出低电平)

#include "gpio.h"

PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U , FUNC_GPIO2);
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U , FUNC_GPIO5);

GPIO_OUTPUT(BIT2 | BIT5, 0);//设置GPIO2和GPIO5输出低电平

ESP8266 SDK开发: 外设篇-GPIO输出高低电平的更多相关文章

  1. ESP8266 LUA脚本语言开发: 外设篇-GPIO输出高低电平

    前言 所有的LUA开发API参考 https://nodemcu.readthedocs.io/en/master/en/modules/gpio/ 原理图 让GPIO2输出高电平只需 gpio.mo ...

  2. ESP8266 SDK开发: 外设篇-GPIO输入检测

    前言 官方提供了以下函数检测引脚输入状态 检测GPIO5 if( GPIO_INPUT_GET(5) == 0 ) GPIO5当前为低电平 if( GPIO_INPUT_GET(5) == 1 ) G ...

  3. ESP8266 SDK开发: 外设篇-串口

    串口分布 串口切换说明 1.默认所有的数据都使用串口0输出 官方提供了函数可以选择printf利用哪一个串口输出 配置printf使用串口1打印输出,波特率115200 (注:这样配置对于调试程序很有 ...

  4. ESP8266 LUA脚本语言开发: 外设篇-GPIO输入检测

    咱使用 GPIO0 https://nodemcu.readthedocs.io/en/master/modules/gpio/#gpioread 第一种 GPIO设置为输出的状态下读取引脚状态 gp ...

  5. ESP8266 LUA脚本语言开发: 外设篇-GPIO中断检测

    https://nodemcu.readthedocs.io/en/master/modules/gpio/#gpiomode 测试引脚 GPIO0 gpio.mode(,gpio.INT) func ...

  6. esp8266 SDK开发之环境搭建

    最近在弄这个WiFi模块,发现网上SDK开发方面的资料很少,发现了一套视频教程,不过主讲人的讲课方式实在受不了.对基于SDK开发感兴趣的同学可以通过本帖在Ubuntu系统上通过Eclipes搭建开发环 ...

  7. ESP8266 SDK开发: 测试下诱人的程序

    前言 这一节测试一下诱人的程序 实现的功能,APP通过SmartConfig给Wi-Fi模块配网并绑定设备,然后通过MQTT远程控制开发板的继电器, APP显示ESP8266采集的温湿度数据. 简而言 ...

  8. ESP8266 LUA脚本语言开发: 外设篇-串口

    https://nodemcu.readthedocs.io/en/master/modules/uart/ 串口发送数据 发送一个16进制到串口 uart.write(0, 0xaa) 注: 之所以 ...

  9. ESP8266 LUA脚本语言开发: 外设篇-定时器,延时,看门狗

    https://nodemcu.readthedocs.io/en/master/modules/tmr/ local mytimer1 = tmr.create() function TimeFun ...

随机推荐

  1. LeetCode 20:有效的括号 Valid Parentheses

    给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. Given a string containing just the characters '(', ' ...

  2. LeetCode 203:移除链表元素 Remove LinkedList Elements

    删除链表中等于给定值 val 的所有节点. Remove all elements from a linked list of integers that have value val. 示例: 输入 ...

  3. 如何配置jdk的本地环境

    在计算机→属性→高级系统设置→高级→环境变量,如图: 第一步:系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(本人是C:\Program Files\Java\jdk1.8. ...

  4. CentOS7-安装后常见问题--ssh慢,汉字乱码gbk,-locale设置等

    00.ssh 慢问题解决修改:  [test@centos ~]$ sudo vi /etc/ssh/sshd_config /** 使用/命令查找 API 字符串*/ # GSSAPI option ...

  5. Window权限维持(十):Netsh Helper DLL

    Netsh是Windows实用程序,管理员可以使用它来执行与系统的网络配置有关的任务,并在基于主机的Windows防火墙上进行修改.可以通过使用DLL文件来扩展Netsh功能.此功能使红队可以使用此工 ...

  6. Type Erasure with Pokemon---swift的类型擦除

    我感觉这个是swift的设计缺陷. 类型擦除:解决泛型类型作为公用类型的问题 是抽象的公用机制的一种实现方式. 1)类型擦除并不能解决类型不一致的兼容问题,只能解决类似继承一致性的兼容问题. 2)擦除 ...

  7. 三维网格细分算法(Catmull-Clark subdivision & Loop subdivision)附源码(转载)

    转载:  https://www.cnblogs.com/shushen/p/5251070.html 下图描述了细分的基本思想,每次细分都是在每条边上插入一个新的顶点,可以看到随着细分次数的增加,折 ...

  8. Winform中对DevExpress的RadopGroup的Description、Value、Tag、Text的理解与使用

    场景 Winform中实现读取xml配置文件并动态配置ZedGraph的RadioGroup的选项: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article ...

  9. Unable to parse composition

    Unable to parse composition When i tried to load gif to my project suddenly return me error: Java.La ...

  10. Lucene搜索核心代码TermInfosReader

    TermInfosReader类是Lucene搜索的核心代码,所有的搜索最终都是落到通过term查询,TermInfosReader里定义了支持的基础的term查询功能. 前置知识: 词元字典文件(t ...