Mundarija:
- 1 -qadam: materiallar
- 2 -qadam: Breadboard tartibi
- 3 -qadam: Kutubxonani o'rnatish
- 4 -qadam: Kod
- 5 -qadam: Natija
- 6 -qadam: Muammolarni bartaraf etish
- 7 -qadam: oldinga siljish
Video: Arduino bilan 4 raqamli va 7 segmentli displey yordamida: 7 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Bu qo'llanmada men sizga arduino yordamida 4 ta raqamli 7 segmentli displeydan qanday foydalanishni ko'rsataman. Shuni ta'kidlashni istardimki, bu arduino uno, leonardo, 13 raqamli pinli taxtalardagi deyarli barcha raqamli pinlarni oladi. Ko'pgina displeylarda to'g'ridan -to'g'ri arduino yoki rezistor orqali ulanadigan 12 ta ajratuvchi pin bor. Shuni ham ta'kidlashni istardimki, bu displeylar Ground, 5V yoki 3.3V ga ulanishga hojat yo'q. Xo'sh, boshlaylik …
1 -qadam: materiallar
Bunday displeydan foydalanish deyarli hech qanday materialni talab qilmaydi.
- 4 x 330Ω rezistorlar
- 12 x Erkak -erkak o'tish simlari
- 1 x Arduino
- har qanday o'lchamdagi 1 ta non paneli (ularga elektr relslari kerak emas)
Ushbu dizayn prototipini yaratish uchun hech qanday vosita kerak emas. Biroq, undan doimiy foydalanish uchun lehimlantiruvchi temir va pcb taxtasi kerak bo'ladi.
2 -qadam: Breadboard tartibi
Sizga kontekst berish uchun men har bir pinni ishlatilishini tushuntiraman. Displeydagi 12 pimdan 8 tasi 8 segment uchun ishlatiladi. Har qanday raqamni yaratish uchun 7 ta segment ishlatiladi, bittasi kasrli nuqtani boshqaradi. 12 pinning qolgan 4 tasi displeydagi 4 ta raqamning har birini boshqaradi. Rezistorga ega bo'lgan har qanday pin 4 raqamli pimlardan biridir, aks holda ular segment pimlari.
Ekran va arduino o'rtasidagi aloqani ko'rsatish uchun men muzlatishdan yaratgan yuqoridagi dizayn. Rezistorlar qaerda joylashganligiga e'tibor bering, chunki agar siz rezistorni ekrandagi noto'g'ri pinga ulasangiz, bu raqam ishlamaydi yoki segment ishlamaydi, abadiy …
*** MUHIM QAYD ***
O'chirish moslamasini o'rnatayotganda sariq va binafsha simlarni almashtiring (men sxemani buzib tashladim).
3 -qadam: Kutubxonani o'rnatish
Quyida havola qilingan kutubxona displeyni osongina boshqarish uchun arduino veb -saytidan olingan. Havola github -ga o'tadi. Agar siz hech qachon github -da bo'lmagan bo'lsangiz, keyingi paragrafni o'qigan bo'lsangiz, diqqat bilan tinglang. Veb -saytga kirganingizda, derazaning o'ng tomoniga qarang va "Zipni yuklab olish" ni ko'rmaguningizcha pastga qarang. Bu tugmani bosing va yuklamalaringizda paydo bo'lishini ko'ring.
Endi siz oldindan o'rnatilgan kutubxonani kutubxonalar papkasiga yuklashingiz kerak. Agar hozir buni qanday qilish kerak bo'lsa, keyingi bosqichga o'ting, aks holda o'qishni davom ettiring. Avval Finder -ga kiring va "hujjatlar" papkasini toping va oching. Keyin "arduino" papkasini toping va oching. Keyin kutubxonalar papkasini toping va oching. Nihoyat, o'rnatilgan kutubxonani yaqinda ochilgan kutubxonalar jildiga sudrab olib tashlang.
MUHIM. Agar siz kutubxonani kutubxonalar papkasiga joylashtirayotganingizda arduino ilovangiz ochilgan va ishlayotgan bo'lsa, arduino kutubxonani tanimaydi. Siz shunchaki dasturdan chiqib, uni qayta ochishingiz kerak.
github.com/DeanIsMe/SevSeg
4 -qadam: Kod
Biror narsani ko'rsatish uchun kod quyida keltirilgan.
#"SevSeg.h" ni qo'shing
SevSeg sevseg; // Etti segmentli boshqaruvchi ob'ektining bo'shligini sozlashni boshlang () {bayt numDigits = 4; bayt raqamli pinlar = {2, 3, 4, 5}; bayt segmentlari = {6, 7, 8, 9, 10, 11, 12, 13}; bool qarshiliklariOnSegments = 0; // yuqoridagi o'zgaruvchi raqamli pinlarga 4 rezistor qo'yilganligini ko'rsatadi. // segment pinlarida 8 ta rezistordan foydalanmoqchi bo'lsangiz, o'zgaruvchini 1 ga o'rnating. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Takroriy yugurish kerak
5 -qadam: Natija
Agar siz displeyni to'g'ri ulagan bo'lsangiz, kodni to'g'ri yuklagan bo'lsangiz va kodni to'g'ri nusxa ko'chirgan bo'lsangiz, displeyda pi ko'rsatilishi kerak (atigi 3.141).
Agar shunday bo'lmasa, nima sodir bo'layotgani uchun oltinchi qadamni o'qing.
Agar siz buni to'g'ri tushungan bo'lsangiz, men ettinchi bosqichda o'qishni taklif qilaman.
6 -qadam: Muammolarni bartaraf etish
Bu erda men sizning displeyingiz bilan chalkashib ketishi mumkin bo'lgan ikkita mumkin bo'lgan narsani sanab o'tdim. Afsuski, ikkalasidan faqat bittasini tuzatish mumkin.
- Sizning displeyingiz 8888 raqamini ko'rsatadi
Xavotir olmang, bu muammoni hal qilish mumkin, faqat quyidagi bosqichlarni bajaring
1. "sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins)" kodini toping;
2. "UMUMIY KATOD" ni "UMUMI ANODE" ga o'zgartiring.
3. Kodni qayta yuklang
- Sizning displeyingizda 3. 41 yoki.141 yoki 3.1 1 yoki 3.14 ko'rsatiladi
Afsuski, bu muammoni hal qilish mumkin yoki bo'lmasligi mumkin: (… (bu mening yig'layotgan yuzim)
1. Ulanishingizni tekshiring va hamma narsa rozetkaga ulanganligiga ishonch hosil qiling
2. Sxemani yana tekshiring, chunki siz uni noto'g'ri ulagansiz
3. "3.141, 3" ko'rsatilishi kerak bo'lgan bo'sh chiziqli chiziqni toping va 3.141 -ni 8888 -ga o'zgartiring va 8 -dan bittasi yo'qligini tekshiring.
4. Agar shunday bo'lsa, simlardan birining qarshiligi bo'lmasligi mumkin edi, chunki u bitta raqam yonib ketgan degan ma'noni anglatardi. Buni ekranning orqa tomoniga qarab tekshirish mumkin. Agar siz pimlardan birining yonida qora rangni ko'rsangiz, siz raqamli joylardan birini bosib o'tdingiz. Afsuski, bu tuzatilmaydi va siz boshqa displey sotib olmoqchisiz.
5. Agar siz hech qaerda qora belgini ko'rmasangiz, simlarni ulab qo'yolmaysiz, shuning uchun sxemani tekshiring va to'g'ri ulang va kodni 8888 dan 3.141 ga o'zgartiring.
7 -qadam: oldinga siljish
Bir nechta LEDni boshqarish uchun arduino-dagi bir nechta pimlarni ishlatishning bir usuli-bu ko'p pinli bo'lishni talab qiladigan uch holatli 8-pinli o'tish registri. Shunday qilib, 8 segmentli pinni arduino -ga to'g'ridan -to'g'ri ulash o'rniga, ularni smenali registrga ulashingiz va buni qanday qilishni bilib olishingiz mumkin.
Bu men o'ylab topgan g'oya, lekin men buni qanday qilishni bilmayman, yoki arduino va displey kutubxonasi bilan ham mumkinmi, lekin hayron qoladiganlar uchun ovqat.
Ko'rgazmangizdan zavqlaning va umid qilamanki, sizga bu ko'rsatma yoqdi, chunki men qoralamalarimdagi ko'p narsalarni birinchi bo'lib tugatdim.
Tavsiya:
4 raqamli 7 segmentli displey 14 pinli Arduino bilan: 3 qadam
4 raqamli 7 segmentli displey 14 pinli Arduino bilan: Agar qurilma juda ko'p pimlarga ega bo'lsa, qurilma to'g'ri ishlayaptimi yoki yo'qligini tekshirish har doim yaxshi bo'ladi. Ushbu loyihada men 4 raqamli 7 segmentli 14 pinli displeyni sinab ko'rdim. Barcha 7 segment bir vaqtning o'zida 0 dan 9 gacha ko'rsatiladi.
0 dan 9999 gacha hisoblash 8051 bilan 7 segmentli displey yordamida: 5 qadam
7 segmentli displey yordamida 8051 bilan 0 dan 9999 gacha sanash: Hammaga salom, bu darslikda biz faqat bitta port va 4 ta raqamli pin yordamida 7 segmentli to'rtta displey yordamida 0 dan 9999 gacha qanday sanashni aytib beramiz
Masofa sensori + 4 raqamli, 7 segmentli displey: 4 qadam
Masofa sensori + 4 raqamli, 7 segmentli displey: masofali sensordan foydalaning va ob'ektlarning masofasini etti segmentli displeyda ko'ring. Ob'ekt yaqinlashganda servo chap tomonga ko'proq harakatlanishini ham ko'rishingiz mumkin. Qizil svetodiod sizning yaqinligingiz haqida, yashil chiroq esa sizga juda f
Axlatdan 4-raqamli 7-segmentli displey: 7-qadam
Chiqindi qutisidan 4-raqamli 7-segmentli displey: Men ko'rsatmali, juda uzoq vaqt yuklaganimga ancha bo'ldi. Shunday qilib, bugun men sizga qanday qilib keraksiz narsalarni chiroyli displeyga aylantirishni ko'rsataman! Bu displeyni soat uchun ishlatish mumkin, men uni kelajakda ko'rsatib beraman. Keling, qazib olaylik! U
Raqamli va ikkilik soat 8 raqamli X 7 segmentli LED displeyda: 4 qadam (rasmlar bilan)
Raqamli va ikkilik soat 8 ta raqamli X 7 segmentli LED displeyda: Bu mening raqamli & 8 dyuymli x 7 segmentli LED displey yordamida ikkilik soat. Men odatiy qurilmalar, xususan, soatlar uchun yangi xususiyatlar berishni yaxshi ko'raman va bu holda ikkilik soat uchun 7 segmentli displeydan foydalanish noan'anaviy va