ESP32学习笔记1(GPIO)

这里主要介绍我关于ESP32的学习笔记,ESP32是一个可玩性很高的单片机。(当然我这里是基于vscode中PlatformIO完成的,和arduino语法完全相同,十分容易上手) Alt text 引脚图

GPIO

主要就是GPIO的输入输出模式的使用 pinmode(引脚名,模式选择);

输出模式

int LED = 2;//引脚命名
void setup()
{
  pinMode(LED, OUTPUT);//选择为输出模式
}
void loop()
{
  digitalWrite(LED, HIGH); //输出高电平
  delay(1000); //等待一秒
  digitalWrite(LED, LOW); // 输出低电平
  delay(1000); //等待一秒
}

触摸按键

其中一共有是10个触摸按键 主要函数touchRead();

/*******************************************************
   ESP32LED闪烁
   功能:实现触摸按键按一下改变LED得状态
   引脚:T0 (GPIO4)
   Designer: Code_Mouse
   Date:2018-9-1
   T0:GPIO 4
   T2:GPIO 2
   T3:GPIO 15
   T4:GPIO 13
   T5:GPIO 12
   T6:GPIO 14
   T7:GPIO 27
   T8:GPIO 33
   T9:GPIO 32
 *******************************************************/
#define TOUTCH_PIN 4 // ESP32 Pin D4
#define LED_PIN 2
int touch_value = 100;
int flg = 0;
void setup()
{
  Serial.begin(115200);
  delay(1000);
  Serial.println("ESP32 Touch Test");
  pinMode(LED_PIN, OUTPUT);
  digitalWrite (LED_PIN, LOW);
}
void loop()
{
  touch_value = touchRead(TOUTCH_PIN);//读取触摸按键的值
  Serial.println(touch_value);
  if (touch_value < 40)//小于40表示触摸了按键
  {
    flg = ~flg; digitalWrite (LED_PIN, flg);
  }
}

输入

pinmode(引脚名,模式选择);

#define INPUT1 2
void setup()
{
  Serial.begin(115200);
  delay(1000);
  pinMode(INPUT1, INPUT);//输入模式
}
void loop()
{
  Serial.println(digitalRead(INPUT1));//读取该引脚电平并打印
}

本文章使用limfx的vscode插件快速发布