Πίνακας περιεχομένων:

PWM Με ESP32 - LED φωτισμού με PWM σε ESP 32 Με Arduino IDE: 6 βήματα
PWM Με ESP32 - LED φωτισμού με PWM σε ESP 32 Με Arduino IDE: 6 βήματα

Βίντεο: PWM Με ESP32 - LED φωτισμού με PWM σε ESP 32 Με Arduino IDE: 6 βήματα

Βίντεο: PWM Με ESP32 - LED φωτισμού με PWM σε ESP 32 Με Arduino IDE: 6 βήματα
Βίντεο: LDmicro 14: I2C LCD & DS3231 Real-Time Clock (Microcontroller PLC Ladder Programming with LDmicro) 2024, Ιούλιος
Anonim
PWM Με ESP32 | Dimming LED Με PWM σε ESP 32 Με Arduino IDE
PWM Με ESP32 | Dimming LED Με PWM σε ESP 32 Με Arduino IDE

Σε αυτές τις οδηγίες θα δούμε πώς να παράγουμε σήματα PWM με ESP32 χρησιμοποιώντας το Arduino IDE και το PWM χρησιμοποιείται βασικά για τη δημιουργία αναλογικής εξόδου από οποιοδήποτε MCU και ότι η αναλογική έξοδος θα μπορούσε να είναι μεταξύ 0V έως 3.3V (σε περίπτωση esp32) και από 0V έως 5V (σε περίπτωση arduino uno) και αυτά τα σήματα PWM (αναλογική έξοδος) χρησιμοποιούνται για να αμβλύνουν (μεταβλητή έξοδο, φωτίζοντας το LED σε διαφορετική φωτεινότητα) το LED.

Βήμα 1: Πράγματα που χρειάζεστε

Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε
Πράγματα που χρειάζεστε

Για αυτό το σεμινάριο θα χρειαστείτε τα ακόλουθα πράγματα: ESP32

Αντιστάσεις 220 ohm

Χρώμα led

σανίδα ψωμιού

Λίγοι άλτες

Βήμα 2: Κατανόηση του PWM στο ESP32

Κατανόηση του PWM στο ESP32
Κατανόηση του PWM στο ESP32

Το ESP32 διαθέτει ελεγκτή PWM 16 καναλιών και αυτά τα 16 κανάλια είναι ανεξάρτητα και μπορούν να διαμορφωθούν ανεξάρτητα ώστε να λαμβάνουν σήματα PWM με διαφορετικές ιδιότητες για διαφορετικές απαιτήσεις. Πριν περάσετε από τον κώδικα και όλη τη διαδικασία πρέπει να γνωρίζετε τα ακόλουθα πράγματα: >> υπάρχουν 16 (0 έως 15) κανάλια pwm σε ένα ESP32. Πρέπει να επιλέξετε το κανάλι σας PWM. >> Μετά από αυτό πρέπει να επιλέξουμε τη συχνότητα για το PWM, μπορούμε να πάμε για 5000hz. >> Εδώ έχουμε ανάλυση από 1 έως 16bit σε ESP32, αλλά για αυτό το σεμινάριο θα πάμε μόνο για 8 bit που σημαίνει ότι η φωτεινότητα θα ελέγχεται από τις τιμές 0 έως 255. >> Πρέπει να ρυθμίσετε το LED για το PWM για να το κάνετε αυτό, πρέπει να χρησιμοποιήσετε την ακόλουθη γραμμή κώδικα και σε αυτό πρέπει να αναφέρετε για το κανάλι led (χρησιμοποιούμε το κανάλι 0 του ESP32) που χρησιμοποιείτε για PWM και η συχνότητα είναι η συχνότητα (χρησιμοποιούμε 5000hz) PWM & ανάλυσης που χρησιμοποιείτε (χρησιμοποιούμε ανάλυση 8bit).ledcSetup (ledChannel, freq, resolution); Τιμές στην περίπτωσή μας: const int freq = 5000? const int ledChannel = 0; const int resolution = 8; >>, στη συνέχεια, αναφέρετε ποια ακίδα LED πρέπει να χρησιμοποιήσετε χρησιμοποιώντας την ακόλουθη εντολή: ledcAttachPin (ledPin, ledChannel);- εδώ το ledPin είναι ο αριθμ. Το οποίο θα χρησιμοποιήσουμε & ledChannel είναι το κανάλι που πρέπει να επιλέξουμε για το PWM.5. Τέλος, για να ελέγξετε τη φωτεινότητα των οδηγήσεων χρησιμοποιώντας το PWM, χρησιμοποιείτε την ακόλουθη λειτουργία: >> το κύριο σημαντικό μέρος του κώδικα θα είναι η ακόλουθη εντολή που θα γράψει την αναλογική έξοδο σε ακίδα LED: ledcWrite (ledChannel, κύκλος εργασιών). Αυτή η παραπάνω εντολή χρειάζεται "ledChannel" & "dutyCycle" όπου το κανάλι είναι ο αριθμός καναλιού που θα χρησιμοποιήσουμε και ο κύκλος λειτουργίας είναι η τιμή που γράφουμε ως έξοδο στην καρφίτσα LED.

Βήμα 3: Συνδέσεις

Συνδέσεις
Συνδέσεις

Το τμήμα σύνδεσης είναι πολύ εύκολο. Πρέπει να συνδέσετε ένα LED με Resistor στο GPIO16 όπως φαίνεται στα σχματικά.

Βήμα 4: Εγκαταστήστε τους πίνακες ESP32 στο Arduino IDE

Εγκαταστήστε ESP32 BOARDS στο Arduino IDE
Εγκαταστήστε ESP32 BOARDS στο Arduino IDE

Βεβαιωθείτε ότι έχετε Arduino IDE στον υπολογιστή σας και ότι έχετε εγκαταστήσει ESP32 Boards στο Arduino IDE σας, και αν δεν συμβαίνει αυτό, ακολουθήστε τις παρακάτω οδηγίες για να το εγκαταστήσετε.:

Βήμα 5: Κωδικός

Κώδικας
Κώδικας

Αντιγράψτε τον ακόλουθο κώδικα και ανεβάστε τον στο ESP32: // τον αριθμό του LED pinconst int ledPin = 16; // 16 αντιστοιχεί στο GPIO16 // ρύθμιση PWM propertiesconst int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup () {// διαμόρφωση LED PWM functionalitites ledcSetup (ledChannel, freq, resolution); // επισυνάψτε το κανάλι στο GPIO για έλεγχο φωτεινότητα με PWM ledcWrite (ledChannel, dutyCycle). καθυστέρηση (15)? } // μειώστε τη φωτεινότητα της λυχνίας LED για (int dutyCycle = 255; dutyCycle> = 0; dutyCycle-) {// αλλάζοντας τη φωτεινότητα των LED με PWM ledcWrite (ledChannel, dutyCycle); καθυστέρηση (15)? }}

Βήμα 6: Δοκιμή της λειτουργικότητας PWM

Δοκιμή της λειτουργικότητας PWM
Δοκιμή της λειτουργικότητας PWM

Μετά τη μεταφόρτωση του κώδικα, θα δείτε την ένταση των LED σας να αλλάζει έτσι ώστε να φτάσετε στο τέλος αυτών των οδηγιών. Διασκεδάστε χρησιμοποιώντας το PWM με το ESP32 στα έργα σας.

Συνιστάται: