当前位置: 首页 > news >正文

25/1/11 嵌入式笔记<esp32> 初入esp32

用Arduino平台,学习了点亮led灯。

//定义LED引脚
int led_pin = 12;void setup() {//设定引脚为输出模式pinMode(led_pin,OUTPUT):}void loop() {// 点亮LED:digitalWrite(led_pin,HIGH);//延时1sdelay(1000);//熄灭LEDdigitalWrite(led_pin,LOW)://延时 1sdelay(1000);
}

流水灯

//定义GPIO引脚数组
int pin_list[5] = {13,12,14,27,26};
int num = sizeof(pin_list)/sizeof(pin_list[0]);void setup(){//设置所有的GPIO引脚为输出模式for(int i =0;i<num;i++){pinMode(pin_list[i],OUTPUT);}
}
void loop(){//将所有引脚设置为高电平for (int i=0;i<num;i++){digitalWrite(pin_list[i],HIGH);delay(50);}for (int i=0;i<num;i++){digitalWrite(pin_list[i],LOW);delay(10);
}
}

digitalWrite:设置高低电平

数码管

int pin_a = 4;
int pin_b = 5;
int pin_c = 19;
int pin_d = 21;
int pin_e = 22;
int pin_f = 2;
int pin_g = 15;
int pin_dp = 18;//定义一个存放所有输出引脚的数组
int pin_array[8] = {pin_a,pin_b,pin_c,pin_d,pin_e,pin_f,pin_g,pin_dp};//定义数字显示逻辑的二维数组
int number_array[][8] = {{0,0,0,0,0,0,1,1},{1,0,0,1,1,1,1,1},{0,0,1,0,0,1,0,1},{0,0,0,0,1,1,0,1},{1,0,0,1,1,0,0,1},{0,1,0,0,1,0,0,1},{0,1,0,0,0,0,0,1},{0,0,0,1,1,1,1,1},{0,0,0,0,0,0,0,1},{0,0,0,0,1,0,0,1},
};void setup(){//设置所有引脚为输出引脚for (int i;i<8;i++){pinMode(pin_array[i],OUTPUT);digitalWrite(pin_array[i],HIGH);}
}
void loop(){//显示数字int num = 3;for(int i=0;i<8;i++){digitalWrite(pin_array[i],number_array[num][i]);}
}

pinMode:用于配置指定引脚的工作模式

digitalRead:用于读取指定数字引脚的电平状态

两个核心函数:

setup() 函数是 Arduino 编程中的一个核心函数,它在程序开始时仅执行一次,用于初始化硬件、配置参数和执行其他只需要运行一次的任务。

void loop() 是 Arduino 编程中的一个核心函数,它会在 setup() 函数执行完毕后不断循环运行loop() 函数是 ESP32 或其他 Arduino 兼容开发板的主程序循环,用于实现持续的逻辑控制和任务处理。

相关文章:

25/1/11 嵌入式笔记<esp32> 初入esp32

用Arduino平台&#xff0c;学习了点亮led灯。 //定义LED引脚 int led_pin 12&#xff1b;void setup() {//设定引脚为输出模式pinMode(led_pin,OUTPUT):}void loop() {// 点亮LED:digitalWrite(led_pin,HIGH);//延时1sdelay(1000);//熄灭LEDdigitalWrite(led_pin,LOW)://延时…...

基于SMT32U575RIT单片机-中断练习

任务 查看手册对所有的拓展板上和相对应的底板的引脚对应的端口找到以下结论 通过STM32MX软件对各个引脚进行相应的配置 1.第一种切换模式电脑发送 #include "main.h" #include "icache.h" #include "usart.h" #include "gpio.h"/*…...

在Django的Serializer的列表数据中剔除指定元素

【Python工作随笔】 提问 如何在List序列化方法中剔除不要的元素&#xff0c;例如在成绩中剔除0 class BasicDescriptionSubjectBoxPlotSerializer(serializers.Serializer):语文 serializers.ListField(sourcescore_chinese)数学 serializers.ListField(sourcescore_math…...

我喜欢的数学题

偏向抖机灵性质的&#xff0c;考察理解的&#xff0c;而不是比拼计算量的&#xff0c;可能跟现在岁数大了算不明白了多少有点关系吧。 高高手&#xff0c;别太重计算&#xff0c;给普通孩子留条路。就算将来真的理工治国&#xff0c;也没必要都往人形计算机方面引导。毕竟你未来…...

Redis解决热key问题

当Redis遇到热key问题时&#xff0c;即某个或某些key被频繁访问&#xff0c;可能导致单个Redis节点负载过高&#xff0c;影响整个系统性能。以下是一些常见的解决方案&#xff1a; 1. 缓存预热与复制 缓存预热&#xff1a;在系统启动阶段&#xff0c;将热key对应的value预先加…...

【git】-2 分支管理

目录 一、分支的概念 二、查看、创建、切换分支 1、查看分支-git branch 2、创建分支- git branch 分支名 3、切换分支- git checkout 分支名 三、git指针 -实现分支和版本间的切换 四、普通合并分支 git merge 文件名 五、冲突分支合并 ​​​​​​【git】-初始gi…...

Win11+WLS Ubuntu 鸿蒙开发环境搭建(二)

参考文章 penHarmony南向开发笔记&#xff08;一&#xff09;开发环境搭建 OpenHarmony&#xff08;鸿蒙南向开发&#xff09;——标准系统移植指南&#xff08;一&#xff09; OpenHarmony&#xff08;鸿蒙南向开发&#xff09;——小型系统芯片移植指南&#xff08;二&…...

Meilisearch ASP.Net Core API 功能demo

安装 MeiliSearch 0.15.5 0.15.5demo code using Meilisearch; using System.Data; using System.Text.Json; using System.Text.Json.Serialization;namespace MeiliSearchAPI {public class MeilisearchHelper{public MeilisearchHelper(){DefaultClient…...

程序员独立开发竞品分析:确定网站使用什么建站系统

要确定一个网站使用的建站系统&#xff0c;可以通过以下几种方法尝试分析&#xff1a; 查看页面源代码&#xff1a; 打开网站&#xff0c;右键点击页面并选择“查看页面源代码”。在代码中查找一些常见的建站系统标志&#xff0c;例如&#xff1a; WordPress 的迹象&#xff1a…...

selenium+pyqt5自动化工具总结

说明&#xff1a;本工具是&#xff0c;操作外部google浏览器、selenium是无法操作qt界面中嵌套的浏览器的&#xff0c; 工具在后面 1. 代码结构 pycharm打开的文件下&#xff0c;再写一个子文件&#xff0c;文件导入的时候把子文件名带上 这样就可以在 外层使用命令 pyinst…...

docker GPU安装

docker 离线安装 docker下载地址&#xff1a;https://download.docker.com/linux/static/stable/x86_64/ 解压&#xff1a; tar xzvf docker-24.0.6.tgz移动解压后的内容 sudo mv docker/* /usr/local/bin/创建 docker.service配置文件 sudo vim /etc/systemd/system/dock…...

hutool糊涂工具通过注解设置excel宽度

import java.lang.annotation.*;Documented Retention(RetentionPolicy.RUNTIME) Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER}) public interface ExcelStyle {int width() default 0; }/*** 聊天记录*/ Data public class DialogContentInfo {/**…...

Three.js教程015:全面讲解Three.js的UV与应用

文章目录 全面讲解UV与应用UV介绍代码演示完整代码全面讲解UV与应用 UV介绍 在 Three.js 中,UV 坐标(也称为纹理坐标)是用来定义纹理如何映射到三维模型上的一组二维坐标。UV 坐标的范围通常是 (0, 0) 到 (1, 1),其中: U 对应纹理的横向轴(类似于 X 轴)。V 对应纹理的…...

IOS界面传值-OC

1、页面跳转 由 ViewController 页面跳转至 NextViewController 页面 &#xff08;1&#xff09;ViewController ViewController.h #import <UIKit/UIKit.h>interface ViewController : UIViewControllerend ViewController.m #import "ViewController.h" …...

阿里mod_asr3.0集成webrtc静音算法

alibabacloud-nls-cpp-sdk-master 先到阿里官网下载nls库的源代码&#xff0c;编译生成对应的库文件和头文件。 我编译的放到了以下目录。 /home/jp/2025/alibabacloud-nls-cpp-sdk-master/build/install/NlsSdk3.X_LINUX/include/ /home/jp/2025/alibabacloud-nls-cpp-sdk-…...

[Git] git pull --rebase / git rebase origin/master

1. git pull --rebase 这个命令是用来更新当前分支的&#xff0c;它会从远程仓库拉取更新&#xff0c;然后将你的本地提交重新应用到更新后的基础之上。它相当于先执行 git fetch&#xff0c;然后在当前分支上执行 git rebase origin/。使用 --rebase 而不是默认的 merge 可以…...

Leetcode​​​​​​​3270:求出数字答案

题目描述&#xff1a; 给你三个 正 整数 num1 &#xff0c;num2 和 num3 。 数字 num1 &#xff0c;num2 和 num3 的数字答案 key 是一个四位数&#xff0c;定义如下&#xff1a; 一开始&#xff0c;如果有数字 少于 四位数&#xff0c;给它补 前导 0 。答案 key 的第 i 个数…...

第十一章 施工监测

11 施工监测 11.1 施工监测主要内容、常用仪器与方法 11.1.1 主要内容 1.目的和意义 及时掌握工程自身及周边环境风险动态、通过分析和预测工程结构及周边环境的安全状态与发展趋势&#xff0c;优化调整设计参数和施工参数提供数据支撑。为今后同类工程施工提供类比资料 2…...

Python爬虫应用领域

Python爬虫作为一种强大的数据获取工具&#xff0c;在多个领域发挥着重要作用。以下是Python爬虫在不同领域的应用情况&#xff1a; 一、数据采集与分析 &#xff08;一&#xff09;市场调研 产品信息收集&#xff1a;爬取电商平台的产品详情、价格、销量、用户评价等数据&am…...

软件架构考试基础知识 002:进程的状态与其切换

进程状态转换的说明 在操作系统中&#xff0c;进程的状态表示其当前的执行情况和资源占用情况。进程状态的转换反映了操作系统如何管理和调度进程。以下是进程状态转换的说明&#xff1a; 1. 三态模型&#xff08;Three-state Model&#xff09; 三态模型是最基础的进程状态模…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中&#xff0c;新增了一个本地验证码接口 /code&#xff0c;使用函数式路由&#xff08;RouterFunction&#xff09;和 Hutool 的 Circle…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者&#xff1a;吴岐诗&#xff0c;杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言&#xff1a;融合数据湖与数仓的创新之路 在数字金融时代&#xff0c;数据已成为金融机构的核心竞争力。杭银消费金…...