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);
  //延时1s
  delay(1000);

  //熄灭LED
  digitalWrite(led_pin,LOW):
  //延时 1s
  delay(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 兼容开发板的主程序循环,用于实现持续的逻辑控制和任务处理。

相关推荐
U盘失踪了8 小时前
【笔记】Flask 用 session 对象存储用户状态
笔记
Brilliantwxx9 小时前
【C++】 vector(代码实现+坑点讲解)
开发语言·c++·笔记·算法
码途漫谈15 小时前
Easy-Vibe高级开发篇阅读笔记(五)——CC教程之Agent Teams
人工智能·笔记·ai·开源·ai编程
憧憬成为原神糕手15 小时前
FFmpeg 音视频开发笔记(一):H.264 解码为 YUV
笔记·ffmpeg·音视频
爱听歌的周童鞋15 小时前
Learn-Claude-Code | 笔记 | Collaboration | s11 Autonomous Agents
笔记·llm·agent·claude code·collaboration·autonomous
05候补工程师16 小时前
[线性代数] 判定线性相关性的“降维打击”:从基本定理到速通特殊法
经验分享·笔记·学习·线性代数·考研
sweetheart7-717 小时前
go/golang 入门学习笔记(Java/Python/C++转Go快速上手)
笔记·学习·golang·go语言
Byron__17 小时前
Java JVM核心知识点复习笔记
java·jvm·笔记
爱莉希雅&&&17 小时前
MySQL MGR + MySQL Router 高可用集群完整笔记(含手动配置 + Shell 接管双路线)
linux·数据库·笔记·mysql·mysqlrouter·mysqlshell
凉、介17 小时前
Armv8-A virtualization 笔记 (一)
c语言·笔记·学习·嵌入式·虚拟化·hypervisor