Mundarija:
- 1 -qadam: Birinchi narsa birinchi
- 2 -qadam: kerakli uskunalar
- 3 -qadam: kompilyatsiya qilish uchun Arduino IDE kutubxonalari
- 4 -qadam: ulanishlar
- 5 -qadam: eskizni yuklash
Video: BMP va SPI yoki I2C OLED yordamida Arduino Altimetr: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:28
Uzoq vaqt davomida men bitta sensordan foydalanib, altimetr va haroratni qidirardim va uni SPI -ga asoslangan OLEDda ko'rsatardim. Men aniq bir narsa topa olmaganim uchun, U8glib kutubxonasidan foydalanib, o'z uyimni quraman deb o'yladim. YouTube -da bitta darslik bor, lekin men video darslarni juda yomon ko'raman, men oddiy ko'rsatmali va tijorat havolasi bo'lmagan matnlarni afzal ko'raman.
1 -qadam: Birinchi narsa birinchi
Loyihani amalga oshirishdan oldin, men sizga I2C yoki SPI uchun SSD1306/OLED qo'llanmasini (qaysi birini ishlatmoqchi bo'lsangiz) bajarishingizni qat'iy tavsiya qilaman. Bu sizning displeyingizni qanday ulashni/ulashni bilishingizni, shuningdek displeyingiz ishlashini ta'minlaydi. Adafruit bo'yicha qo'llanma va/yoki u8glib misollari qo'llanmasini bajaring. Biz u8glib -ni bu erda ishlatamiz, shuning uchun ilg'or foydalanuvchilar uchun tavsiya etiladi.
2 -qadam: kerakli uskunalar
1. Arduino UNO yoki Nano yoki shunga o'xshash.
2. BMP085 yoki BMP180 Barometrik bosim sensori.
3. SSD1306 I2C yoki SPI Bus (eskizda sozlanishi).
4. Jumper simlari va ulanish uchun non paneli yoki vero taxtasi.
3 -qadam: kompilyatsiya qilish uchun Arduino IDE kutubxonalari
1. Wire.h
2. Adafruit_BMP085.h (BMP180 uchun ham ishlaydi)
3. U8glib.h
4 -qadam: ulanishlar
Ulanish I2C va SPI OLED displeylari uchun bir xil. Faqat ko'rsatish uchun ulanish boshqacha bo'ladi.
1. Arduino uchun BMP:
VC> 3.3V
GND> Er
SCL> A5/SCL
SDA> A4/SDA
SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
2. Arduino uchun SPI OLED
VDD> 5V
GND> Er
SCK/D0> D12 (Raqamli 12)
SDA/D1/Mosi> D11
CS/Chip ni tanlang> D10
A0/shahar> D9
RES/Reset> D13
(Agar sizda SPI OLED -da PIN -kodni tiklash bo'lmasa, sketch displeyidagi tanlangan parametrlarni asl holatini tiklash va o'chirish pinini olib tashlang)
3. I2C OLED
BMP simlari bilan bir xil, ular bir xil port va avtobus turlaridan foydalanadilar.
5 -qadam: eskizni yuklash
Juda sodda. Faqat zip faylini yuklab oling va Arduino IDE -da oching. Hammasi eskizda tuzilgan. SPI OLED foydalanuvchilari eskizni hech qanday tahrir qilmasdan yuklashlari mumkin va u ishlaydi. I2C OLED foydalanuvchilari uchun, eskizning Displeyni tanlash opsiyasidan ko'rsatiladigan nom/variantni izohlang va SPI OLEDni o'chirish uchun SPI Display modeli/parametrini sharhlang va yoping.
SPI displey parametrlari:
// U8GLIB_SSD1306_128X64 u8g (12, 11, 10, 9, 13); // SW SPI Com: SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
I2C displey parametrlari:
// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // ACni yubormaydigan displey
Parametrni yoqish uchun sharhni ochish uchun boshidagi // belgisini olib tashlang. Faqat bitta displey tanlanganiga/izoh berilmaganligiga ishonch hosil qiling.
Maslahatlar:
1. BMP datchiklari shamol, issiqlik va yorug'likka sezgir. Qoplamoqchi bo'ling, eng yaxshi natijalarga ko'pikni to'g'ri shamollatish bilan biriktirish orqali erishiladi. O'rdak lentasi kabi narsalar ham ishlaydi, lekin aniq bo'lmaydi.
2. Agar ishlab chiqaruvchi boshqacha aytmasa, BMP odatda 3.3V dan foydalanadi. OLED 3.3V-5.5V dan ishlashi mumkin (4-5V tavsiya etiladi)
3. Hamma narsani non taxtasiga birinchi bo'lib o'rnatish qat'iyan tavsiya etiladi.
4. Agar siz OLED -da yangi bo'lsangiz, iltimos, displeyingiz ishlayotganiga va ulanishlaringiz aniqligiga ishonch hosil qilish uchun avval matn va qo'g'irchoqlar kabi oddiy narsalarni sinab ko'ring.
Tavsiya:
Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ringni qanday ishlatish kerak: 4 qadam
Arduino bilan Neopixel Ws2812 LED yoki LED STRIP yoki Led Ring -dan qanday foydalanish kerak: Salom bolalar, chunki Neopixel LED chizig'i juda mashhur va u shuningdek ws2812 LED tasmasi deb ham ataladi. Ular juda mashhur, chunki bu chiziqli lentada biz har bir LEDga alohida -alohida murojaat qilishimiz mumkin, demak, agar siz bir nechta chiroq bitta rangda porlashini xohlasangiz
I2C / IIC LCD displeyi - Arduino bilan SPI -IIC moduli yordamida I2C LCD displeyiga SPI LCD -dan foydalaning: 5 qadam
I2C / IIC LCD displeyi | IUC LCD displeyiga SPI LCD displeyidan Arduino yordamida IIC modulidan IIC modulidan foydalaning: Salom bolalar, chunki oddiy SPI LCD 1602 -da ulanish uchun simlar juda ko'p, shuning uchun uni arduino bilan ulash juda qiyin, lekin bozorda bitta modul mavjud. SPI displeyini IIC displeyiga aylantiring, shunda siz faqat 4 ta simni ulashingiz kerak
Arduino Ws2812 LED yoki Neopixel Led tasmasi yoki uzukli qo'llanma: 4 qadam
Arduino Ws2812 LED yoki Neopixel Led Strip yoki Ring qo'llanmasi: Bu yo'riqnomada biz neopixel yoki ws 2812 yoki Arduino bilan tezkor LEDni qanday ishlatishni bilib olamiz. LEDlar alohida -alohida joylashtiriladi, shuning uchun ularni hind deb ham atashadi
Karnay yoki Flyback transformatorida PWM yordamida Arduino yordamida qo'shiqlarni (MP3) ijro etish: 6 qadam (rasmlar bilan)
Qo'shiqlarni (MP3) Arduino bilan PWM yordamida karnay yoki Flyback transformatorida ijro eting: Salom bolalar, bu mening birinchi ko'rsatmam, sizga yoqadi degan umiddaman !! Asosan, men ushbu loyihada Arduino va noutbuk o'rtasidagi ketma -ket aloqani qo'lladim. musiqa ma'lumotlarini noutbukdan Arduino -ga uzatish. Va Arduino TIMERS -dan foydalanish
Pi bo'yicha dastlabki* SPI: Raspberry Pi yordamida SPI 3 o'qli akselerometr bilan aloqa: 10 qadam
Pi bo'yicha dastlabki* SPI: Raspberry Pi yordamida SPI 3 o'qli akselerometr bilan aloqa: Raspbianni sozlash va bcm2835 SPI kutubxonasi yordamida SPI qurilmasi bilan muloqot qilish bo'yicha bosqichma-bosqich ko'rsatma (bit urilmagan!) Bu hali juda oldindan … Men jismoniy bog'lanishning yaxshiroq rasmlarini qo'shishim va ba'zi noqulay kodlar ustida ishlashim kerak