ESP32学习第一天-ESP32点亮LED,按键控制LED状态,LED流水灯

news2024/12/23 5:12:43

 第一天使用到的函数:

函数第一个参数设置哪一个引脚,第二个参数设置引脚模式。

pinMode(led_pin,OUTPUT); //设置引脚模式

函数的第一个参数设置哪一个引脚,第二个参数设置是高电平还是低电平。 

digitalWrite(led_pin,HIGH);//将引脚电平拉高

 

 

                            

#include <Arduino.h>
//定义LED引脚
char led_pin = 2;
void setup() {
  pinMode(led_pin,OUTPUT); //设置引脚模式
  digitalWrite(led_pin,HIGH);//将引脚电平拉高
}

void loop() {
  // put your main code here, to run repeatedly:

}

 控制led流水灯技巧

定义一个数组里面存放引脚,然后在for循环里面设置引脚模式,在for循环里点灯和关灯。

                                

#include <Arduino.h>
//定义GPIO引脚数组

int pin_list[5] ={13,12,14,27,26};

int num = sizeof(pin_list)/sizeof(pin_list[0]);
void setup() {
  //将所有引脚设置成输出模式
  for(int i=0;i<num;i++){
    pinMode(pin_list[i],OUTPUT);
  }

}

void loop() {
  //将所有引脚设置成高电平
  for(int i,i<num,i++){
    digitalWrite(pin_list[i],HIGH);
    delay(50);
  }

  for(int i,i<num,i++){
    digitalWrite(pin_list[i],LOW);
    delay(50);
  }

}

 

 按键设置led电平模式

将引脚设置为输入模式

  pinMode(button_pin, INPUT_PULLDOWN);

 

#include <Arduino.h>
//定义GPIO引脚数组
char led_pin = 2;      //led引脚设置
char button_pin = 14;  //按键引脚设置
bool status = true;    //记录led状态是否更改
void setup() {
  //配置引脚模式
  pinMode(led_pin, OUTPUT);
  pinMode(button_pin, INPUT_PULLDOWN);
}

void loop() {
  //按键消抖
 if(digitalRead(button_pin) == 1)
 {
   delay(10);
   if(digitalRead(button_pin) && status == true)
   {
    digitalWrite(led_pin,!digitalRead(led_pin));
    status = !status;
   }
   else if(digitalRead(button_pin) == 0)
   {
    status == true;
   }
 }
}

 digitalRead()参数填要测的引脚

digitalRead(button_pin) = 1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1617554.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker部署Nginx和SpringBoot项目,一遍把坑全踩完!

一.下载Docker 理论上来说&#xff0c;直接跟官网就行了&#xff0c;不过这里有个小坑。 官网默认推荐的是Docker Desktop&#xff08;一个docker图形化工具&#xff09;的安装方式&#xff0c;而不是Docker Engine(docker核心组件&#xff09;的安装。 正确查看安装文档的方式…

电脑怎么拖动文件到想要的位置?电脑上拖拽没了的文件怎么找回

在日常的办公和学习中&#xff0c;电脑文件拖拽操作是每位用户都不可或缺的技能。然而&#xff0c;有时在拖动文件时&#xff0c;可能会因为误操作或其他原因&#xff0c;导致文件消失或移至未知位置。本文将详细解析如何在电脑上轻松拖动文件到指定位置&#xff0c;并为您提供…

HarmonyOS开发案例:【音乐播放器】

介绍 使用ArkTS语言实现了一个简易的音乐播放器应用&#xff0c;主要包含以下功能&#xff1a; 播放应用中的音频资源文件&#xff0c;并可进行上一曲、下一曲、播放、暂停、切换播放模式&#xff08;顺序播放、单曲循环、随机播放&#xff09;等操作。结合后台任务管理模块&…

多因素不同水平的正交表设计(并列法)

文章目录 一、问题提出二、举例说明 一、问题提出 参考高等教育课本《实验设计与数据处理》 很多时候&#xff0c;我们要考察的因素水平数不尽相同&#xff0c;这时候一般采用混合水平正交表或者对普通的正交表作修改&#xff0c;其中&#xff0c;混合水平正交表由于水平数不规…

某翻译平台翻译接口逆向之加解密参数刨析

上文链接 某翻译平台翻译接口逆向之webpack学习 分析参数 加密参数&#xff1a; ${t} function S(e, t) {return _(client${u}&mysticTime${e}&product${d}&key${t}) } function k(e, t) {const n (new Date).getTime();return {sign: S(n, e),client: u,produc…

STM32 软件I2C方式读取MT6701磁编码器获取角度例程

STM32 软件I2C方式读取MT6701磁编码器获取角度例程 &#x1f4cd;相关篇《STM32 软件I2C方式读取AS5600磁编码器获取角度例程》&#x1f33f;《Arduino通过I2C驱动MT6701磁编码器并读取角度数据》&#x1f530;MT6701芯片和AS5600从软件读取对比&#xff0c;只是读取的寄存器和…

掉落回弹问题(C语言)

一、N-S流程图&#xff1b; 二、运行结果&#xff1b; 三、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;float b 100;float sum 0;int i 0;//运算&#xff1b;for (i 1; i < 10; i){//运算&…

2024平替电容笔买哪个品牌好?iPad电容笔全能榜单热门款TOP5分享!

2024年&#xff0c;随着科技的不断发展和消费者对生活品质的追求&#xff0c;电容笔作为一种创新的无纸化工具&#xff0c;逐渐走进人们的生活和工作中。然而&#xff0c;在电容笔市场的繁荣背后&#xff0c;也隐藏着品质良莠不齐的现象。众多品牌为了追求利润&#xff0c;推出…

用Python将原始边列表转换为邻接矩阵

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在图论和网络分析中&#xff0c;图是一种非常重要的数据结构&#xff0c;它由节点&#xff…

美业连锁多门店收银系统源码-美业系统iPad端使用前准备工作分享

美业管理系统源码 博弈美业SaaS系统 连锁多门店美业收银系统源码 多门店管理 / 会员管理 / 预约管理 / 排班管理 / 商品管理 / 促销活动 PC管理后台、手机APP、iPad APP、微信小程序 1、 购买一台iPad并安装应用 请使用系统版本在10.0.0或以上的苹果iPad&#xff08;建议购…

node-sass安装失败解决

老项目安装node-sass4.14.1一直失败 "node-sass": "^4.14.1",报错环境变量Path 中没有 python2.7 gyp verb check python checking for Python executable "python2.7" in the PATH安装python2.7,然后设置npm config set python C:\Python27 …

HART协议

一、HART协议 HART 协议采用美国电话通讯系统Bell202频移键控(FSK)标准&#xff0c;在4&#xff5e;20mA的模拟0.5mA的正弦波&#xff0c;波特率是 1200bps。因为所叠加的正弦信号平均值为0&#xff0c;而且相位连续频移键控技术要求在波特率为 1200Hz的数据位 1 和 0 的边界的…

【CVPR2024】文本到图像的行人再识别中的噪声对应学习

这篇论文的标题是《Noisy-Correspondence Learning for Text-to-Image Person Re-identification》,作者是来自中国四川大学、英国诺森比亚大学、新加坡A*STAR前沿人工智能研究中心和高性能计算研究所的研究人员。论文主要研究了文本到图像的行人再识别(Text-to-Image Person…

mybatis拦截器和mybatis plus的拦截器

MyBatis拦截器和MyBatis Plus的拦截器在概念上是一致的&#xff0c;都是通过拦截器机制对MyBatis的SQL执行过程进行扩展和控制&#xff0c;但是在实现细节和功能上有所差异。MyBatis Plus的拦截器是建立在MyBatis拦截器基础之上&#xff0c;通过封装简化了开发流程&#xff0c;…

动物解剖流程3d仿真展示动画支持反复观看和使用

在兽医专业的广袤领域中&#xff0c;动物解剖学作为基石学科&#xff0c;为组织胚胎学、生理学、病理解剖学、外科手术学、临床诊断学等科研教学提供了坚实的基础。而如今&#xff0c;随着科技的飞速发展&#xff0c;我们迎来了一个全新的学习时代——3D数字动物解刨虚拟仿真实…

ESP32-Thonny 拍摄图片到SD卡

前言&#xff1a; 代码运行在Thonny 添加main.py到单片机中&#xff1a; 可以先运行一下试试&#xff1a;会输出以下信息&#xff1a; 没有问题的话&#xff08;SD卡挂载成功&#xff0c;摄像头初始化成功&#xff09;运行一次主程序后&#xff0c;闪光灯会闪烁一下。 代码&…

autodesk系列软件安装错误1603,手动安装Autodesk Desktop Licensing Service之后,启动服务提示错误1067

一般Autodesk Desktop Licensing Service这个服务没安装或者不正常会导致autodesk系列软件安装错误1603或者其他报错。 手动安装Autodesk Desktop Licensing Service之后&#xff0c;启动服务提示错误1067&#xff0c; 解决方法如下 打开autoremove点击扩展功能&#xff0c;输…

一维递归:递去

示例&#xff1a; /*** brief how about recursive-forward-1? show you here.* author wenxuanpei* email 15873152445163.com(query for any question here)*/ #define _CRT_SECURE_NO_WARNINGS//support c-library in Microsoft-Visual-Studio #include <stdio.h>…

李廉洋:4.23黄金休市之后一蹶不振,原油小幅度上涨。晚间策略!

美国利率居高不下&#xff0c;降低了黄金等非收益资产的吸引力。今天的经济数据可能会影响美联储的利率决定&#xff0c;从而可能影响金价走势。美国货币政策对黄金价格的影响&#xff0c;美元走强以及对美国利率持续高企的预期&#xff0c;正对金价施加额外压力。美联储对持续…