本次写这篇文章是自己做一下学习记录,如有错误,还请大家斧正!!!

日后及时修正!感谢支持!

欢迎大家的关注        点赞        收藏        留言


目录

前言

一、新建工程

二、项目函数介绍   

三、代码编写

四、编译、烧录、运行

五、代码进阶

结束语


前言

按键操作作为GPIO口的输入的经典教程是每一位单片机开发新手接触的第二个项目、无论你是学习51单片机还是STM32等,都是以按键操作本次作为其开发的第二个项目,而怎样处理好按键也是有一定的技巧的,所以接下来就开启我的第二篇学习记录了。


一、新建工程

首先打开Arduino IDE,点击 文件——> 点击新建,就会生成一个新的工程模板了。 (还可以点任务栏中“折了一角的书页”快速新建)。

然后给项目重命名,然后再保存。

这样一个新的工程就建好了。


二、项目函数介绍

本次项目既然是按键,那就离不开IO口了,所以本次提及的函数就是对IO的输入进行讲解。

首先介绍我们本次的重点:

 digitalWrite()函数:

         在使用输入功能前,你需要先通过pinMode() 函数配置引脚的模式为输入模式模式。

digitalRead(pin);
参数 说明
pin 指定引脚编号的配置

三、代码编写

可以看见我的开发板的按键接的是低电平,并且接到了GPIO2引脚。

示例代码如下:

int key=0;      //定义状态变量void setup() {// put your setup code here, to run once://初始化引脚pinMode(0,INPUT);     //0脚做输入——KEY引脚pinMode(2,OUTPUT);    //2脚做输出——LED引脚
}void loop() {// put your main code here, to run repeatedly:key=digitalRead(0); //将0脚检测得电平赋值给key;if(key==LOW)        {digitalWrite(2,LOW);    //如果检测为低电平,就点亮LED灯}else                      //否则LED熄灭{digitalWrite(2,HIGH);}
}

四、编译、烧录、运行

在我前一篇博文就介绍了如何编译、烧录,这里就不再过多赘述了,还望谅解!

因为CSDN上传视频麻烦,这里就不视频演视了,代码运行结果:当按键被按下时LED灯被点亮,松手就熄灭。


五、代码进阶

因为在之前学51时,按键消抖这块必不可少,就提出来这是不是这也可以用按键消抖代码?于是就有了本次的代码进阶,在学习的路上发现这个按键消抖的思想无论是51单片机还是STM32都适用。

接下来就演示进阶示例代码:

void setup() {// put your setup code here, to run once:pinMode(2,OUTPUT);pinMode(0,INPUT);
}void loop() {// put your main code here, to run repeatedly:if(digitalRead(0)==0){delay(10);if(digitalRead(0)==0){digitalWrite(2,LOW);}while(digitalRead(0)==0);}
//  delay(100);elsedigitalWrite(2,HIGH);
//  delay(100);
}

现象就不演视了,就上面基础教程一样。

在这里我发现了一个有趣的现象,就是消不消抖对这款单片机没有太大区别!


结束语

关于此次基于Arduino IDE开发的ESP8266(ESP-12F)项目2 ——按键操作项目的介绍就讲到这里了,如果什么问题请再评论区留言。

接下来会陆陆续续发布一些其他的教程,敬请期待!感谢大家的支持!如有觉得这篇文章对你有所帮助的,还请点赞、收藏吧!

基于Arduino IDE开发的ESP8266(ESP-12F)项目2 ——按键操作相关推荐

  1. 基于Arduino IDE开发的ESP8266(ESP-12F)项目4 ——中断及高级输入输出

     本次写这篇文章是自己做一下学习记录,如有错误,还请大家斧正!!! 日后及时修正!感谢支持! 欢迎大家的关注        点赞        收藏        留言 目录 前言 一.新建工程 二. ...

  2. 基于Arduino IDE开发的LD3320语音识别模块

    基于Arduino的LD3320语音识别模块设计详解 文章目录 基于Arduino的LD3320语音识别模块设计详解 前言 一.LD3320驱动编写 step 1.0 使用Arduino的SPI库,通 ...

  3. 教你如何使用esp8266接入华为云物联网平台(IOTDA)(Arduino IDE开发)

    教你如何使用esp8266接入华为云物联网平台(IOTDA)(Arduino IDE开发) 一.简介         esp8266系列作为低功耗高性价比的嵌入式无线网络控制模块,深受对嵌入式感兴趣的 ...

  4. 用arduino IDE开发esp8266 wifi

    用arduino IDE开发esp8266 被临时通知开发一个网络传输数据,于是用起我好旧不用的esp8266,记得当初大一时候第一次使用网络使用是stm32+esp8266,比现在用乐鑫的node ...

  5. 天猫精灵 python_利用天猫精灵控制ESP8266(NodeMCU开发板)arduino ide开发

    第一 下载demo例程 下载地址: 点击下载 本demo 是利用arduino IDE开发,关于arduino IDE 的ESP8266环境配置可参考:环境配置: 点击跳转 第二 修改demo例程 需 ...

  6. 如何用Arduino IDE开发9.9元的合宙LuatOS ESP32C3开发板?

    如何用Arduino IDE开发9.9元的合宙LuatOS ESP32C3开发板? 合宙LuatOS ESP32C3-CORE开发板 简介 硬件准备 软件准备 1.安装串口驱动(CH343) 2.安装 ...

  7. 合宙ESP32C3基于Arduino IDE框架下配置分区表

    合宙ESP32C3基于Arduino IDE框架下配置分区表 关于VSCode PIO配置分区表可以参考示例文章<合宙ESP32C3基于VSCode PIO开发初探教程> 有关Arduin ...

  8. 如何解决Arduino IDE开发板管理器下载失败----以离线安装esp8266-2.7.2为例

    如何解决Arduino IDE开发板管理器下载失败----以离线安装esp8266-2.7.2为例 esp8266-2.7.2 离线安装步骤 注意:离线安装可以避免下载文件,但仍然会自动联网验证安装包 ...

  9. 基于Arduino Uno开发板制作音乐播放器

    基于Arduino Uno开发板制作音乐播放器 本文将基于Arduino开发板实现一个音乐播放器. 利用Arduino Uno读取sd卡模块中内存卡的音乐,传输信号到扬声器进行播放. 一.项目软硬件简 ...

最新文章

  1. QT的QSslSocket类的使用
  2. 【sprinb-boot】Junit测试
  3. 【HDU - 5090】Game with Pearls (匈牙利算法,二分图匹配)
  4. 解决win2008下IIS7的HTTP500错误
  5. vue2.0 非父子组件之间的单一事件通信
  6. volley 框架的使用
  7. [读码时间] 自定义右键菜单
  8. httpd-2.2部署Discuz!论坛系统、wordpress博客系统和phpMyAdmin程序
  9. 用java判断x奇或偶_改善java程序——用偶判断,不用奇判断
  10. SSL自签署证书生成脚本
  11. u3d联机斗地主(1):出牌规则
  12. SPECCPU2006 Spec2006 使用说明
  13. 两种电致发光器件EQE测量方法(光分布法和积分球法)
  14. element-ui 阻止冒泡事件
  15. IOS 命令行安装备忘
  16. 微信小程序管理客服微信号
  17. HTTP代理关闭还是自动的呢?
  18. Pulmonary--Detection4
  19. vue 引用网络css_Vue 引入外部CSS文件
  20. 制作自己的xmpp/gtalk客户端

热门文章

  1. 十六.激光和惯导LIO-SLAM框架学习之配置自用传感器实时室外跑LIO-SAM框架
  2. 阿里虚拟主机屡有非法访问攻击
  3. HPE: smart storage: hpssacli:
  4. 都铎王朝第一至四季/全集The Tudors迅雷下载
  5. conv2、imfilt、ifft2之间的区别与联系
  6. 爱情心理学2(致敬张晓文老师)
  7. 为什么我们的自动化测试“要”这么难
  8. DVBBS 8.2 漏洞利用
  9. dvbbs 8.1.1的漏洞
  10. c语言错误c280,东芝彩色复印机2051c错误c280什么意 – 手机爱问