[1]ESP32--面向对象点灯--class类的使用

程序实例:面向对象点灯 - OOP - Wokwi Arduino and ESP32 Simulatorhttps://wokwi.com/projects/335954592898482770

 传统的点灯方式:面向过程

void setup(){
  Serial.begin(115200);
  pinMode(33, OUTPUT);
}

void loop(){
  digitalWrite(33,!digitalRead(33));
  delay(500);
}

C++:面向对象

首先创建一个类,进行封装

class led {
  public:    // 创建的对象若只能自己访问,则用private,否则用public
    byte pin;
    void on();
    void off();
    void toggle();  // toggle切换状态
};

// 创建3个led对象
led ledGreen, ledYellow, ledRed;

void led::on() {  // ::表示on()这个函数是属于led这个类
  digitalWrite(pin, HIGH);
}

void led::off() {
  digitalWrite(pin, LOW);
}

void led::toggle() {
  digitalWrite(pin, !digitalRead(pin));
}

void setup() {
  Serial.begin(115200);
  ledGreen.pin = 33;  // led引脚定义
  pinMode(33, OUTPUT);
}

void loop() {
  ledGreen.toggle();
  delay(500);
}

猜你喜欢

转载自blog.csdn.net/qq_45355603/article/details/126278034
今日推荐