Mündəricat:

Arduino ilə 4 Rəqəmli və 7 Segmentli Ekran istifadə edərək: 7 addım
Arduino ilə 4 Rəqəmli və 7 Segmentli Ekran istifadə edərək: 7 addım

Video: Arduino ilə 4 Rəqəmli və 7 Segmentli Ekran istifadə edərək: 7 addım

Video: Arduino ilə 4 Rəqəmli və 7 Segmentli Ekran istifadə edərək: 7 addım
Video: How to use TM1637 4 digits seven segment display with Arduino 2024, Noyabr
Anonim
Arduino ilə 4 Rəqəmli və 7 Segmentli Ekrandan istifadə
Arduino ilə 4 Rəqəmli və 7 Segmentli Ekrandan istifadə

Bu təlimatda sizə arduino istifadə edərək 4 rəqəmdən ibarət 7 seqmentli ekranın necə istifadə olunacağını göstərəcəyəm. Qeyd etmək istədiyim bəzi əsas şeylər, arduino uno, leonardo, 13 rəqəmsal pinli lövhələrdəki rəqəmsal pinlərin demək olar ki, hamısını tutur. Əksər ekranlarda ya birbaşa arduino ya da bir rezistor vasitəsi ilə bağlanan 12 qırılma pimi var. Həm də qeyd etmək istərdim ki, bu ekranların Ground, 5V və ya 3.3V -ə qoşulmasına ehtiyac yoxdur. Beləliklə, başlayaq…

Addım 1: Materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

Belə bir ekran istifadə etmək üçün demək olar ki, heç bir material tələb olunmur.

- 4 x 330Ω rezistorlar

- 12 x Kişi -kişi tullanan telləri

- 1 x Arduino

- İstənilən ölçüdə 1 x çörək taxtası (elektrik raylarına ehtiyac yoxdur)

Bu dizaynın prototipini hazırlamaq üçün heç bir vasitəyə ehtiyac yoxdur. Ancaq daha daimi istifadə üçün bir lehimləmə dəmiri və bir pcb lövhəsinə ehtiyac olardı.

Addım 2: Breadboard Layout

Çörək lövhəsi düzeni
Çörək lövhəsi düzeni

Yalnız bir kontekst vermək üçün hər bir pinin istifadəsini izah edəcəyəm. Ekrandakı 12 pindən 8 -i 8 seqment üçün istifadə olunur. Hər hansı bir rəqəm yaratmaq üçün istifadə olunan 7 seqment var, ondalık nöqtəni idarə edir. 12 sancaqdan qalan 4 -ü ekrandakı 4 rəqəmin hər birini idarə edir. Üzərində bir rezistor olan hər hansı bir pin 4 rəqəmli sancaqlardandır, əks halda onlar seqment sancaqlarıdır.

Ekran və arduino arasındakı əlaqəni göstərmək üçün fritzingdən yaratdığım yuxarıdakı dizayn. Rezistorların yerləşdiyi yerə diqqət yetirin, çünki rezistoru ekrandakı yanlış pinlə bağlasanız ya bu rəqəm işləməyəcək, ya da bu seqment işləməyəcək, ƏMƏDƏ…

*** Vacib Qeyd ***

Dövrə qurarkən sarı və bənövşəyi telləri dəyişdirin (dövrə sxemimi pozdum).

Addım 3: Kitabxananın quraşdırılması

Aşağıda əlaqələndirilən kitabxana, ekranı asanlıqla idarə etmək üçün arduino veb saytından götürülmüşdür. Bağlantı github -a gedir. Github -da heç olmamısınızsa, növbəti abzası oxumusunuzsa diqqətlə dinləyin. Veb sayta daxil olanda pəncərənin sağ tərəfinə baxın və "Zipi Yüklə" yazısını görənə qədər aşağıya baxın. Bu düyməni basın və yükləmələrinizdə görünməsini izləyin.

İndi əvvəllər quraşdırılmış kitabxananı kitabxana qovluğunuza yükləməlisiniz. İndi bunu necə edəcəyinizi öyrənsəniz, növbəti addıma keçin, əks halda oxumağa davam edin. Əvvəlcə tapıcıya girin və "sənədlər" qovluğunu tapın və açın. Sonra "arduino" qovluğunu tapın və açın. Sonra, kitabxana qovluğunu tapın və açın. Nəhayət, quraşdırılmış kitabxananı yeni açılmış kitabxanalar qovluğuna sürükləyin.

Vacib. Kitabxananı kitabxanalar qovluğuna yerləşdirərkən arduino tətbiqiniz açılıb işləsəydi, arduino kitabxananı tanımayacaq. Tətbiqdən çıxıb yenidən açmalısınız.

github.com/DeanIsMe/SevSeg

Addım 4: Kod

Kod
Kod

Bir şeyi əslində göstərmək üçün kod aşağıda verilmişdir.

#"SevSeg.h" daxil edin

SevSeg sevseg; // Yeddi seqment nəzarətçi obyekti boşluğu qurmağa başlayın () {byte numDigits = 4; bayt digitPins = {2, 3, 4, 5}; bayt seqmentləri = {6, 7, 8, 9, 10, 11, 12, 13}; bool rezistorlarıOnSegments = 0; // yuxarıdakı dəyişən rəqəm sancaqlarına 4 rezistorun qoyulduğunu göstərir. // seqment sancaqlarında 8 rezistor istifadə etmək istəyirsinizsə dəyişəni 1 olaraq təyin edin. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Dəfələrlə qaçmaq lazımdır

Addım 5: Nəticə

Ekranı düzgün bağladıysanız, kodu düzgün yüklədinizsə və kodlaşdırmanı düz kopyaladınızsa, ekranınız pi göstərməlidir (yalnız 3.141).

Əgər deyilsə, səhv olan hər şey üçün altıncı addımı oxuyun.

Düzgün başa düşmüsünüzsə, onda yeddinci addımda daha da irəli getməyi təklif edirəm.

Addım 6: Problemlərin aradan qaldırılması

Burada, ekranınızı qarışdıra biləcək, ola biləcək iki mümkün şeyi sadaladım. Təəssüf ki, ikisindən yalnız biri düzəldilə bilər.

- Ekranınızda 8888 göstərilir

Narahat olmayın, bu həll edilə bilən problemdir, sadəcə bu addımları izləyin

1. "sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins)" kodunu tapın;

2. "ÜMUMİ CATHODE" ı "Ümumi ANODE" olaraq dəyişdirin

3. Kodu yenidən yükləyin

- Ekranınız 3. 41 və ya.141 və ya 3.1 1 və ya 3.14 digər 1 olmadan göstərilir

Təəssüf ki, bu problem ya həll oluna bilər, ya da həll edilə bilməz: (… (ağlayan üzüm)

1. Bağlantılarınızı yoxlayın və hər şeyin qoşulduğundan və asılmadığından əmin olun

2. Sxemanı yenidən yoxlayın, çünki çox güman ki, onu yanlış bağlamısınız

3. (3.141, 3) göstərilməsini və 3.141 -in 8888 -ə dəyişdirilməsini söylədiyi boşluq döngəsindəki xətti tapın və 8 -dən birinin yox olub olmadığını yoxlayın.

4. Əgər belədirsə, tellərdən birinin rezistoru olmaya bilərdi, çünki rəqəmlərdən birinin yandığı mənasına malik idi. Ekranın arxasına baxaraq bunu yoxlaya bilərsiniz. Sancaqlardan birinin yanında hər hansı bir qara görürsünüzsə, rəqəm yerlərindən birini üstələdiniz. Təəssüf ki, bu düzəldilə bilməz və başqa bir ekran almaq istərdiniz.

5. Heç bir yerdə qara işarəni görmədiyiniz halda, gücdən çıxa bilməyən telləri açdığınız halda, sxematik olaraq yoxlayın və sonra düzgün bağlayın və kodu 8888 -dən 3.141 -ə dəyişdirin.

Addım 7: İrəli gedin

Arduino-da birdən çox pin tələb edən bir çox LED-i idarə etmək üçün bir neçə sancaqdan istifadə etməyin bir yolu, üç dövlətli 8 pinli keçid qeydidir. Beləliklə, 8 seqment sancağını arduino -ya birbaşa bağlamaq əvəzinə, onları qeyd qeydinə qoşa və bunun necə ediləcəyini anlaya bilərsiniz.

Sadəcə düşündüyüm bir fikirdir, amma necə edəcəyimi bilmirəm və ya arduino və ekranın kitabxanası ilə belə mümkündür, amma hey, maraqlananlar üçün düşüncə yeməyi.

Ekranınızla əylənin və ümid edirəm ki, bu təlimatı bəyənmisiniz, çünki qaralamalarımdakı çox şeydən əslində başa vurduğum ilk işdir.

Tövsiyə: