Search Code

Koyarwar ESP32 9/55 - Yin Amfani da Maɓallin Turawa don Kunna LED, Turawa KUNNA, Turawa KASHE -Kayan SunFounder ESP32 IoT

Koyarwar ESP32 9/55 - Yin Amfani da Maɓallin Turawa don Kunna LED, Turawa KUNNA, Turawa KASHE -Kayan SunFounder ESP32 IoT

A cikin wannan koyawa, za mu koyi yadda ake amfani da maɓallin turaw don kunna da kashe LED tare da microcontroller na ESP32. Aikin zai nuna yadda ake karanta yanayin maɓallin turaw da sarrafa LED daidai. Lokacin da aka danna maɓallin, LED zai kunna, kuma idan aka sake shi, zai kashe. Wannan ra'ayi ne na tushe ga ayyuka masu mu'amala da yawa ta amfani da ESP32.

ESP32 microcontroller ne mai ƙarfi wanda ke da Wi-Fi da Bluetooth da aka haɗa a ciki, yana sa ya dace da aikace-aikacen IoT daban-daban. A cikin wannan darasi, za mu yi amfani da ESP32 daga SunFounder ESP32 Starter Kit, wanda ya ƙunshi abubuwa masu mahimmanci kamar resistors da LEDs, don ƙirƙirar da'ira mai sauƙi. Don cikakken bayani game da wayoyi da lambar, da fatan za a koma ga bidiyon (a cikin bidiyo a 00:00).

Kayan Aikin da Aka Bayyana

Abubuwan da suka fi mahimmanci don wannan aikin sun haɗa da microcontroller na ESP32, maɓallin turaw, LED, da resistors. ESP32 yana aiki a matsayin kwakwalwar aikin, yana sarrafa LED bisa ga yanayin maɓallin turaw. Maɓallin turaw yana ba masu amfani damar yin mu'amala da da'ira, yayin da LED ke ba da amsa ta gani lokacin da aka danna maɓallin.

Maɓallin turaw yana aiki ta hanyar rufe da'ira lokacin da aka danna shi, yana ba da damar wutar lantarki ta gudana. Wannan aikin yana aika siginar HIGH zuwa fil ɗin shigar da aka keɓe na ESP32, wanda za a iya karantawa a cikin lambar. Resistor ɗin da aka haɗa da maɓallin yana tabbatar da cewa fil ɗin yana da yanayin da aka ayyana lokacin da ba a danna maɓallin ba, yana hana halayen rashin tsari.

Maɓallin turaw tare da resistor

Umarnin Wayoyi

Don haɗa da'irar, fara da haɗa dogon fil ɗin LED (anode) zuwa resistor na 220-ohm. Haɗa ɗayan ƙarshen resistor ɗin zuwa fil ɗin GPIO 26 akan ESP32. Gajeren fil ɗin LED (cathode) ya kamata a haɗa shi da ƙasa. Na gaba, ɗauki maɓallin turaw kuma haɗa gefe ɗaya zuwa wutar lantarki ta 3.3V akan allo. ɗayan gefen maɓallin turaw yana haɗawa zuwa fil ɗin GPIO 14.

Maɓallin turaw ba tare da resistor ba
Maɓallin turaw ba tare da resistor ba
Maɓallin turaw tare da resistor
Maɓallin turaw tare da resistor

Bugu da ƙari, sanya resistor na 10k-ohm daga fil ɗin GPIO 14 zuwa ƙasa don tabbatar da cewa fil ɗin yana karanta LOW lokacin da ba a danna maɓallin ba. A ƙarshe, haɗa wayar ƙasa daga ESP32 zuwa ƙasa ta gama gari akan breadboard. Wannan saitin zai ba da damar ESP32 ya karanta yanayin maɓallin kuma ya sarrafa LED daidai.

Misalan Lamba & Bayani

Jigon shirin yana farawa ta hanyar ayyana lambobin fil don maɓallin da LED ta amfani da constants. Wannan yana tabbatar da cewa ayyukan fil ɗin ba su canzawa a duk lokacin aiwatar da shirin.

// saita lambobin fil
const int buttonPin = 14;  // Fil ɗin maɓallin
const int ledPin = 26;     // Fil ɗin LED

A cikin aikin setup(), muna fara serial monitor kuma saita fil ɗin maɓallin a matsayin shigarwa yayin da muke saita fil ɗin LED a matsayin fitarwa. Wannan yana shirya ESP32 don karanta daga maɓallin da sarrafa LED.

void setup() {
  Serial.begin(115200);
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);
}

A cikin aikin loop(), shirin yana ci gaba da karanta yanayin maɓallin kuma yana buga shi zuwa serial monitor. Idan an danna maɓallin, LED yana kunna; in ba haka ba, yana kashewa. Wannan dabara tana da mahimmanci don kunna da kashe LED bisa ga yanayin maɓallin.

void loop() {
  buttonState = digitalRead(buttonPin);
  Serial.println(buttonState);
  delay(100);
  if (buttonState == HIGH) {
    digitalWrite(ledPin, HIGH);
  } else {
    digitalWrite(ledPin, LOW);
  }
}

Wannan aikin na asali yana ba da damar LED ya amsa kai tsaye ga maɓallin turaw. Don ƙarin bayani game da aikin da cikakken lambar, da fatan za a koma ga bidiyon da aka bayar (a cikin bidiyo a 14:00).

Nuni / Abin da Za Ka Yi Tsammani

Da zarar an gama wayoyi kuma an ɗora lambar, danna maɓallin turaw ya kamata ya kunna LED, kuma sake shi zai kashe LED. Wannan hali yana tabbatar da cewa ana karanta yanayin maɓallin daidai. Idan LED bai amsa kamar yadda ake tsammani ba, duba wayoyi kuma tabbatar da cewa maɓallin yana aiki da kyau.

Yayin gwaji, tabbatar da lura da serial monitor don karatun yanayin maɓallin. Ya kamata ku ga '1' lokacin da aka danna maɓallin da '0' lokacin da aka sake shi. Idan karatun ya canza ba zato ba tsammani, yana iya nuna matsalar wayoyi ko buƙatar ƙarin dabaru na debouncing a cikin lambar.

Lokutan Bidiyo

  • 00:00 Fara
  • 1:48 Gabatarwar aikin
  • 3:10 Bayanin maɓallin kunnawa da maɓallin dannawa
  • 7:19 Bayanin haɗin wayoyi
  • 12:25 Bayanin lambar Arduino don maɓallin dannawa
  • 15:56 Zaɓin allo na ESP32 da tashar COM
  • 17:38 Nunin aikin
  • 18:33 Aiki-2 Juyawa da LED
  • 19:09 Lambar Arduino don juyar da LED
  • 21:16 Nunin juyar da LED

Hotuna

Push button with resistor
Push button with resistor
Push button with resistor
Push button with resistor
Push button without resistor
Push button without resistor
Push button without resistor
Push button without resistor
Push button with resistor
Push button with resistor
808-ESP32 Tutorial 9/55 - Arduino code push button
Harshe: C++
// set pin numbers
const int buttonPin = 14;  // Button pin
const int ledPin = 26;     // LED pin

// variable for storing the button status
int buttonState = 0;

void setup() {
  Serial.begin(115200);
  // initialize the button pin as an input
  pinMode(buttonPin, INPUT);
  // initialize the LED pin as an output
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // read the state of the button value
  buttonState = digitalRead(buttonPin);
  Serial.println(buttonState);
  delay(100);
  // if the button is pressed
  if (buttonState == HIGH) {
    // turn LED on
    digitalWrite(ledPin, HIGH);

  } else {
    // turn LED off
    digitalWrite(ledPin, LOW);
  }
}

Albarkatun da kuma shafukan da za a duba

Babu kayan aiki tukuna.

Fayiloli📁

Babu fayiloli da ake da su.