Πίνακας περιεχομένων:
- Βήμα 1: Πράγματα που χρειάζεστε
- Βήμα 2: Κατανόηση του PWM στο ESP32
- Βήμα 3: Συνδέσεις
- Βήμα 4: Εγκαταστήστε τους πίνακες ESP32 στο Arduino IDE
- Βήμα 5: Κωδικός
- Βήμα 6: Δοκιμή της λειτουργικότητας PWM
Βίντεο: PWM Με ESP32 - LED φωτισμού με PWM σε ESP 32 Με Arduino IDE: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Σε αυτές τις οδηγίες θα δούμε πώς να παράγουμε σήματα 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
Το 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
Βεβαιωθείτε ότι έχετε 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
Μετά τη μεταφόρτωση του κώδικα, θα δείτε την ένταση των LED σας να αλλάζει έτσι ώστε να φτάσετε στο τέλος αυτών των οδηγιών. Διασκεδάστε χρησιμοποιώντας το PWM με το ESP32 στα έργα σας.
Συνιστάται:
Έλεγχος φωτισμού δωματίου με χρήση αισθητήρα PIR και Arduino: 6 βήματα
Ελεγχόμενος φωτισμός δωματίου με χρήση αισθητήρα PIR και Arduino: Σήμερα, θα ελέγχουμε τα φώτα του δωματίου σας μέσω της ανίχνευσης κίνησης χρησιμοποιώντας έναν αισθητήρα κίνησης Arduino PIR. Αυτό το έργο είναι πολύ διασκεδαστικό και έχει πολύ πρακτική χρήση στο σπίτι σας και μπορεί να σας εξοικονομήσει χρήματα κάνοντας επίσης αυτό το έργο. Ju
Λάμπα έντασης φωτισμού Arduino: 5 βήματα
Arduino Light Intensity Lamp Making: Ο σκοπός αυτού του έργου είναι να δημιουργήσει ένα κύκλωμα που ανάβει τη νύχτα. Αυτό το κύκλωμα είναι εξαιρετικό για εταιρείες, που διαβάζουν τη νύχτα και κάνουν άλλα σημαντικά πράγματα
Αυτόματο σύστημα ενυδρείου φωτισμού και αντλίας με χρονοδιακόπτη Arduino και RTC: 3 βήματα
Αυτόματο σύστημα ενυδρείου φωτός και αντλίας με χρονοδιακόπτη Arduino και RTC: Ένα ενυδρείο μπορεί να μετατραπεί σε μηδενική παρέμβαση που απαιτεί αυτοσυντηρούμενο οικοσύστημα με λίγη προσοχή και τεχνολογία:) Για να χτίσετε αυτόματο σύστημα φωτισμού και αντλίας για ένα ενυδρείο, φυσικά ρυθμίστε ένα χειροκίνητο σύστημα πρώτα. Χρησιμοποίησα 2 προβολείς 50 W το καθένα και 1 6W
Ξεκινώντας με το ESP32 - Εγκατάσταση πλακών ESP32 στο Arduino IDE - ESP32 Blink Code: 3 βήματα
Ξεκινώντας με το ESP32 | Εγκατάσταση πλακών ESP32 στο Arduino IDE | ESP32 Blink Code: Σε αυτά τα εγχειρίδια θα δούμε πώς να ξεκινήσετε να εργάζεστε με το esp32 και πώς να εγκαταστήσετε τους πίνακες esp32 στο Arduino IDE και θα προγραμματίσουμε το esp 32 να εκτελεί κώδικα αναλαμπής χρησιμοποιώντας το arduino ide
Ξεκινώντας με το Esp 8266 Esp-01 Με το Arduino IDE - Εγκατάσταση πινάκων Esp στο Arduino Ide και προγραμματισμός Esp: 4 βήματα
Ξεκινώντας με το Esp 8266 Esp-01 Με το Arduino IDE | Εγκατάσταση πινάκων Esp στο Arduino Ide και προγραμματισμός Esp: Σε αυτά τα εκπαιδευτικά προγράμματα θα μάθουμε πώς να εγκαθιστούμε πίνακες esp8266 στο Arduino IDE και πώς να προγραμματίζουμε esp-01 και να ανεβάζουμε κώδικα σε αυτό. Δεδομένου ότι οι πίνακες esp είναι τόσο δημοφιλείς, σκέφτηκα να διορθώσω ένα εκπαιδευτικό αυτό και οι περισσότεροι άνθρωποι αντιμετωπίζουν πρόβλημα