Mundarija:
- 1 -qadam: Sizga kerak bo'lgan narsalar
- 2 -qadam: ESP32 -da PWMni tushunish
- 3 -qadam: ulanishlar
- 4 -qadam: ESP32 BOARDS -ni Arduino IDE -ga o'rnating
- 5 -qadam: kod
- 6 -qadam: PWM funktsiyasini tekshirish
Video: ESP32 bilan PWM - Arduino IDE bilan ESP 32 -dagi PWM bilan LEDni xira qilish: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Ushbu ko'rsatmalarda biz Arduino IDE va PWM yordamida ESP32 yordamida PWM signallarini qanday yaratishni ko'rib chiqamiz, asosan har qanday MCUdan analog chiqishni ishlab chiqarish uchun ishlatiladi va analog chiqish 0V dan 3.3V gacha (esp32 bo'lsa) va 0V dan 5V (arduino uno holatida) va bu PWM signallari (analog chiqish) LEDni o'zgartirish uchun ishlatiladi (o'zgaruvchan chiqish, LEDni har xil yorqinlikda yoqish).
1 -qadam: Sizga kerak bo'lgan narsalar
Ushbu qo'llanma uchun sizga quyidagilar kerak bo'ladi: ESP32
220 ohmli rezistorlar
Rangli LED
non taxtasi
Bir nechta sakrash
2 -qadam: ESP32 -da PWMni tushunish
ESP32 16 kanalli PWM boshqaruvchisiga ega va bu 16 ta kanallar mustaqil bo'lib, har xil talablar uchun har xil xususiyatlarga ega PWM signallarini olish uchun mustaqil ravishda sozlanishi mumkin. Kodni va barcha jarayonni o'tishdan oldin siz quyidagilarni bilishingiz kerak: >> bor 16 (0 dan 15 gacha) pwm ESP32 kanallari. Siz PWM kanalini tanlashingiz kerak. >> Shundan so'ng biz PWM uchun chastotani tanlashimiz kerak, biz 5000 gigagertsli tezlikda ishlashimiz mumkin. Yorqinlik 0 dan 255 gacha bo'lgan qiymatlar bilan boshqariladi degan ma'noni anglatadi. >> Siz PWM uchun LEDni o'rnatishingiz kerak, buning uchun siz quyidagi kod satrini ishlatishingiz kerak va siz LED kanal haqida gapirishingiz kerak. ESP32) siz PWM va freq uchun ishlatasiz - siz ishlatayotgan PWM va piksellar sonining chastotasi (biz 5000 gigagertsdan foydalanmoqdamiz) (biz 8 bitli piksellar sonidan foydalanmoqdamiz). = 5000; const int ledChannel = 0; const int resolution = 8; >> keyin quyidagi buyruq yordamida qaysi LED piniga ehtiyoj borligini aytib bering: ledcAttachPin (ledPin, ledChannel);- bu erda ledPin- bu pin raqami. Biz foydalanadigan & ledChannel - bu PWM.5 uchun kanalni tanlashimiz kerak. Nihoyat, LED yorqinligini PWM yordamida boshqarish uchun siz quyidagi funktsiyadan foydalanasiz: >> kodning asosiy muhim qismi analog chiqishni LED piniga yozadigan quyidagi buyruq bo'ladi: ledcWrite (ledChannel, dutycycle); bu yuqoridagi buyruq "ledChannel" va "dutyCycle" kerak, bu erda kanal - biz foydalanadigan kanal raqami va ish aylanishi - biz LED piniga chiqish sifatida yozadigan qiymat.
3 -qadam: ulanishlar
Ulanish qismi juda oson, siz rezistorli LEDni sxematik tarzda ko'rsatilgandek GPIO16 ga ulashingiz kerak.
4 -qadam: ESP32 BOARDS -ni Arduino IDE -ga o'rnating
Shaxsiy kompyuteringizda Arduino IDE borligiga va Arduino IDE -ga ESP32 platalarini o'rnatganingizga ishonch hosil qiling, agar bunday bo'lmasa, uni o'rnatish uchun quyidagi ko'rsatmalarga amal qiling.:
5 -qadam: kod
Iltimos, quyidagi kodni nusxa ko'chiring va uni ESP32 -ga yuklang: // LED pinconst int ledPin = 16 raqami; // 16 GPIO16 ga mos keladi // PWM xususiyatlarini sozlash int freq = 5000; const int ledChannel = 0; const int qarori = 8; void setup () {// LED PWM funktsional imkoniyatlarini sozlash ledcSetup (ledChannel, chastota, piksellar sonini); // nazorat qilinadigan kanalni GPIO -ga ulang ledcAttachPin (ledPin, ledChannel);} void loop () {// uchun LED yorqinligini oshirish (int dutyCycle = 0; dutyCycle <= 255; dutyCycle ++) {// LEDni o'zgartirish PWM ledcWrite bilan yorqinlik (ledChannel, dutyCycle); kechikish (15); } // LED yorqinligini kamaytirish (int dutyCycle = 255; dutyCycle> = 0; dutyCycle-) {// LED yorqinligini PWM ledcWrite (ledChannel, dutyCycle) yordamida o'zgartirish; kechikish (15); }}
6 -qadam: PWM funktsiyasini tekshirish
Kodni yuklaganingizdan so'ng, siz LEDlarning intensivligi o'zgarishini ko'rasiz, bu bizni ko'rsatmalarni oxirigacha olib boradi. Loyihalaringizda ESP32 bilan PWM -ni ishlating.
Tavsiya:
Atollic TrueStudio-LEDni STM32L100 yordamida 4 tugmachasini bosib LEDni yoqing: 4 qadam
STM32L100 yordamida tugmachani bosib LEDni Atollic TrueStudio-ni yoqing: STM32-ning ushbu qo'llanmasida men sizga STM32L100-ning GPIO pinini qanday o'qish kerakligi haqida aytib beraman, shuning uchun men bortda Led porlashni o'rnataman. bosish tugmachasini bosish
Uyda aqlli USB LEDni qanday qilish kerak: 9 qadam
Uyda aqlli USB -LEDni qanday qilish kerak: Salom do'stim, bu USB -dan foydalanishingiz mumkin. Bu juda foydali, boshlaylik
Cho'ntak chipi: Ledni miltillashni qanday qilish kerak: 6 qadam
Cho'ntak chipi: qanday qilib miltillashni yo'lboshchiga aylantirish mumkin: hammaga salom !! Bu Chipdagi ko'rsatmali narsalar va uning sumkasi Pochet CHIP. CHIP nima? CHIP - bu Kickstarter kampaniyasi tomonidan Next Thing tomonidan yaratilgan Linux asosidagi eng kichik kompyuter. Barcha xususiyatlarni ko'rish uchun havolani ko'ring (http://docs.getchip.com/chi
Xira LEDlar: 8 qadam
Xira LEDlar: Sizga bu loyiha uchun kerak bo'ladi 1x Arduino Uno1x Potansiyometr5x 220ohm rezistorlarx5 LEDlar
LEDni nazorat qilish finali: 3 qadam
LEDni nazorat qilish finali: Ushbu qo'llanmada siz potentsiometr yordamida 5 LEDli qatorni boshqarishni o'rganasiz. Misollar diagrammasida ko'rinib turganidek, potentsiometr LEDlar orasida yo'qoladi