Mundarija:
- 1 -qadam: ADC va I2C haqida
- 2 -qadam: materiallar
- 3 -qadam: simlarni ulash
- 4 -qadam: UPyCraft IDE Windows kompyuterini o'rnatish
- 5 -qadam: Kengash bilan aloqa o'rnatish
- 6 -qadam: doskada Main.py faylini yaratish
- 7 -qadam: Haydovchi faylini qo'shing
- 8 -qadam: Asosiy funktsiya
- 9 -qadam: Eksperimental natijalar
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Ushbu tajribada MakePython ESP8266 moduli ishlatiladi, bu bizga ESP8266 da MicroPython dasturlashni o'rganishga imkon beradi. Tajriba potentsiometrni aylantirish orqali ekrandagi aylana hajmini nazorat qildi. Bu jarayonda biz ADC, SSD1306 OLED -displey va uPyCraft IDE -dan foydalanish haqida bilib olamiz.
1 -qadam: ADC va I2C haqida
ADC: ADC - analog/raqamli konvertor, analog signallarni raqamliga o'zgartiradi. Old boshqaruv LEDida, PWM ichida, biz raqamli signal va analog signal o'rtasidagi farqni bilamiz. Kundalik hayotda biz ishlatadigan signallar, masalan, yorug'lik qizg'inligi, tovush to'lqinlari va batareya zo'riqishlarining barchasi analog qiymatlardir. Agar biz bitta chipli mikrokompyuter orqali analog signalni (kuchlanish, yorug'lik intensivligi, tovush to'lqini) o'lchab, uni raqamli signal bilan ifodalashni istasak, bizga ADC analog raqamli signal konvertori kerak bo'ladi.
I2C aloqasi: I2C datchiklar/ displeylar kabi bort komponentlari bilan aloqa qilish uchun boshqaruvchi uchun keng qo'llaniladi. Ma'lumot uzatish faqat ikkita signal liniyasi bilan bajarilishi mumkin, mos ravishda SCL soat chizig'i va SDA signal chizig'i. I2C liniyasida faqat bitta asosiy qurilma Master va bir nechta Slave qurilmalari mavjud. Ikkala avtobus ham bo'sh turgan paytda yuqori darajada bo'lishini ta'minlash uchun SDA va SCL tortish qarshiligi bilan ulangan bo'lishi kerak. Chiqish qarshiligining klassik qiymati - 10K.
2 -qadam: materiallar
Uskuna:
- MakePython ESP8266
- Potentsiometr
- Non paneli
- O'tish chizig'i
- USB kabeli
MakePython ESP8266: MakePython kartasida 128x64 pikselli OLED 1.3 OLED bortli bortli … Monoxromli ekranning bir pikselli nurli dioddir. OLED-bu "o'z-o'zini yoritish", pikselning o'zi yorug'lik manbai, shuning uchun kontrast juda yuqori. OLED ekranlarida I2C va SPI aloqa protokollari mavjud bo'lib, ular turli protokollar tufayli to'liq mos kelmaydi. Bizning darsimizda OLED I2C protokoliga mos keladigan tarzda tuzilgan. Modulni sotib olish havolasi:
Potentsiometr: Potansiyometr - bu uchta o'zgaruvchan qonunga muvofiq sozlanishi mumkin bo'lgan uchta asosiy uchi va qarshilik qiymatiga ega sozlanishi qarshilik. Potentsiometr odatda qarshilik korpusi va harakatlanuvchi cho'tkadan iborat. Cho'tkasi qarshilik tanasi bo'ylab harakatlanayotganda, chiqish uchida siljishga nisbatan qarshilik qiymati yoki kuchlanish olinadi.
Dasturiy ta'minot:
uPyCraft IDE
MicroPython -da ko'plab kodlar va dasturlash usullari mavjud. Bu qo'llanmada biz MicroPython -ga o'tishni boshlashning eng oddiy va oson usuli bo'lgan uPyCraft IDE -dan foydalanamiz.
3 -qadam: simlarni ulash
Bu juda kam simlarni talab qiladigan juda oddiy sxema, faqat uchta. Potentsiometrning VCC pinini MakePython ESP8266 3.3v ga, OUT pinini (o'rtada) A0 ga ulang va GND ni bir -biriga ulang. OLED displeyi I2C aloqasidan foydalanadi va taxta simli, shuning uchun bu haqda tashvishlanmang.
4 -qadam: UPyCraft IDE Windows kompyuterini o'rnatish
Windows uchun uPyCraft IDE -ni yuklab olish uchun ushbu havolani bosing:
randomnerdtutorials.com/uPyCraftWindows.
Bir necha soniyadan so'ng, siz yuklamalar papkasida shunga o'xshash faylni ko'rishingiz kerak (uPyCraft_VX.exe).
Bu faylni ikki marta bosing. UPyCraft IDE dasturi bilan yangi oyna ochiladi.
5 -qadam: Kengash bilan aloqa o'rnatish
MicroPython dasturiy ta'minoti o'rnatilgandan so'ng (Makerfabs MakePython ESP8266 ni olganingizda MicroPython dasturiy ta'minoti allaqachon o'rnatilgan), uni kompyuteringizga USB kabeli orqali ulang va quyidagi amallarni bajaring:
- Asboblar> Kengash -ga o'ting va foydalanadigan taxtani tanlang. Esp8266 ni tanlang
- Asboblar> Serial -ga o'ting va ESP ulangan portni tanlang (USB drayverini quyidagi manzilda yuklab oling).
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
Kengash bilan ketma -ket aloqa o'rnatish uchun Ulanish tugmasini bosing.
Kengash bilan muvaffaqiyatli ulanganingizdan so'ng Shell oynasida ">>>" paydo bo'ladi.
6 -qadam: doskada Main.py faylini yaratish
- Yangi fayl yaratish uchun "Yangi fayl" tugmasini bosing.
- Faylni kompyuterda saqlash uchun "Faylni saqlash" tugmasini bosing.
- Yangi oyna ochiladi, faylingizga main.py nomini bering va uni kompyuteringizga saqlang.
- Shundan so'ng, siz qurilmangizda boot.py faylini va main.py faylli yangi varaqni ko'rishingiz kerak.
- Faylni ESP kartasiga yuklash uchun "Yuklab olish va ishga tushirish" tugmasini bosing.
- Endi qurilma katalogi main.py faylini yuklashi kerak. Sizning ESP -da main.py fayli saqlangan.
7 -qadam: Haydovchi faylini qo'shing
OLED ekranida SSD1306 haydovchi chipi ishlatilganligi uchun biz SSD1306 drayverini yuklab olishimiz kerak. Siz SSD1306 kutubxonasini qidirish va yuklab olish uchun GitHub veb -saytiga kirishingiz yoki ssd1306.py drayver faylini yuklab olish uchun bosing.
Yuklab olingandan so'ng, ssd1306.py faylini workSpace katalogiga saqlang. Keyin ssd1306.py faylini oching va ishga tushirish -ni bosing va kutubxona faylini qurilma katalogiga yuklash mumkin. Bu vaqtda ssd1306.py kutubxona fayli sSd1306 import bayonoti bilan chaqirish mumkin bo'lgan MakePython ESP8266 -ga muvaffaqiyatli yuklandi.
*Eslatma: uPyCraft IDE -ni birinchi marta ochganingizda, workSpace yo'li mavjud emas. Siz bosganingizda, workSpace muloqot oynasi ochiladi. Siz saqlamoqchi bo'lgan katalogni tanlab, foydalanuvchi fayllarini saqlash uchun workSpace katalogini yaratishingiz mumkin.
8 -qadam: Asosiy funktsiya
Grammatik tushuntirish:
- i2c: SCL va SDA pinlarini sozlash
- oled: OLED ob'ektini yaratish
- adc.read (): ADC namunali ma'lumotlarini o'qing
- Circle (): aylana radiusini hisoblash uchun sqrt () funktsiyasidan foydalanadigan maxsus chizish doirasi funktsiyasi
- math.sqrt (r): sonning kvadrat ildizini qaytaradi
- piksel (x, y, c): (x, y) nuqtani chizish
- hline (x, y, w, c): gorizontal chiziq torting, (x, y) dan boshlang, w uzunligi
- vline (x, y, w, c): (x, y) dan boshlanadigan, w balandlikdagi vertikal chiziq chizish
- oled.fill (n): n = 0 bo'lganda ekranni bo'shating va n> 0 bo'lganda ekranni to'ldiring.
- oled.show (): ko'rsatish funktsiyasini yoqish
Siz bu faylni to'g'ridan -to'g'ri qo'shishingiz yoki uning tarkibini yangi yaratilgan asosiy faylga ko'chirishingiz mumkin.
9 -qadam: Eksperimental natijalar
Potentsiometrni sekin, soat yo'nalishi bo'yicha aylantiring, shunda ekrandagi doira kattalashadi, soat sohasi farqli o'laroq.