Interfejs siedmi segmentu wyświetlacza z Arduino nano

Interfejs siedmi segmentu wyświetlacza z Arduino nano
Arduino Nano to popularna platforma elektroniki typu open source, która może być używana do kontrolowania i interakcji z szeroką gamą urządzeń elektronicznych, w tym z siedmiopasmem wyświetlaczami. Korzystając z mikrokontrolera Arduino nano, możliwe jest łatwe kontrolowanie stanu każdego segmentu na wyświetlaczu siedmiosegmentowym, umożliwiając tworzenie niestandardowych wyświetlaczy numerycznych i innych interaktywnych projektów.

Ten artykuł obejmuje następujące treści:

  • 1: Wprowadzenie do siedmiu segmentu
  • 2: Pinout z siedmiopasmem
  • 3: Rodzaje siedmiu segmentów
  • 4: Jak sprawdzić siedem segmentów jest powszechną anodą lub wspólną katodą
  • 5: łączenie siedmiu segmentów z Arduino nano
  • 5.1: Schemat
  • 5.2: Sprzęt
  • 5.3: Instalowanie wymaganej biblioteki
  • 6: Kontroluj siedem segmentów za pomocą biblioteki z Arduino nano
  • 6.1: Kod
  • 6.2: Wyjście
  • 7: Kontroluj siedem segment bez użycia biblioteki Arduino nano
  • 7.1: Kod
  • 7.2: Wyjście

1: Wprowadzenie do siedmiu segmentu

Siedmiosegment może wyświetlać informacje numeryczne za pomocą programu mikrokontrolera. Składa się z siedmiu indywidualnych segmentów, z których każdy może być oświetlony lub wyłączony niezależnie, aby stworzyć różne postacie numeryczne.

Siedmiosegmentowy wyświetlacz działa poprzez oświetlenie różnych kombinacji siedmiu segmentów w celu wyświetlania znaków numerycznych. Każdy segment jest kontrolowany przez pojedynczy kodek, który można włączyć lub wyłączać, aby stworzyć pożądany znak numeryczny. Gdy segmenty są oświetlone we właściwej kombinacji, znak numeryczny jest widoczny dla widza.

Podczas korzystania z mikrokontrolera Arduino do kontrolowania siedmiosegmentowego wyświetlacza Arduino wysyła sygnały do ​​określonych pinów na wyświetlaczu siedmiosegmentowym, mówiąc mu, które segmenty należy włączyć lub wyłączyć, aby wyświetlić określony znak numeryczny.

Odbywa się to poprzez pisanie programu w Arduino IDE (zintegrowane środowisko programistyczne) przy użyciu języka programowania C ++. Program wykorzystuje bibliotekę Arduino do kontrolowania stanu każdego segmentu za pomocą prostych poleceń. Program można również skonfigurować w celu wyświetlania różnych znaków numerycznych na podstawie danych wejściowych z czujników lub interakcji użytkownika.

2: Pinout z siedmiopasmem

Wyświetlacz siedmiosegmentowy zwykle ma 10 szpilki, z jednym szpilką dla każdego segmentu, jeden dla dziesiętnych i dwa wspólne szpilki. Oto tabela typowego pinout:

Kod PIN Nazwa pin Opis
1 B Górna prawa szpilka LED
2 A Najwyższy szpilka LED
3 VCC/GND GND/VCC zależy od konfiguracji - wspólna katoda/anoda
4 F Górna lewa szpilka LED
5 G Środkowa szpilka LED
6 dp Pin LED DOT
7 C Pein LED dolnej prawej
8 VCC/GND GND/VCC zależy od konfiguracji - wspólna katoda/anoda
9 D Dolny szpilka LED
10 mi Dolna lewa szpilka LED

Każdy segment jest oznaczony jako A, B, C, D, E, F i G. Wspólny pin jest zwykle używany do kontrolowania wszystkich segmentów jednocześnie. Wspólny pin jest aktywny niski lub aktywny wysoki w zależności od wyświetlacza.

3: Rodzaje siedmiu segmentów

Istnieją dwa główne typy wyświetlaczy siedmiu segmentów:

  • Wspólna katoda
  • Wspólna anoda.

1: w wspólna katoda Wyświetl, wszystkie ujemne terminale segmentów LED są podłączone.

2: w Wspólna anoda Wyświetlacz, wszystkie dodatnie terminale segmentów LED są podłączone.

4: Jak sprawdzić siedem segmentów jest powszechną anodą lub wspólną katodą

Aby sprawdzić rodzaj siedmiu segmentów, potrzebujemy tylko prostego narzędzia - Multimetr. Wykonaj kroki, aby sprawdzić rodzaj wyświetlacza siedmiosegmentowego:

  1. Trzymaj siedmiosegmentowy wyświetlacz mocno pod ręką i zidentyfikuj Pin 1 za pomocą pinout wyjaśnionego powyżej.
  2. Weź multimetr. Załóżmy czerwony ołów pozytywnie (+) i czarny przewagę multimetru dla negatywnych (-).
  3. Ustaw multimetr na test ciągłości.
  4. Po tym sprawdzaniu pracy miernika można sprawdzić, dotknięte zarówno pozytywnymi, jak i negatywnymi potencjalnymi klientami. Dźwięk sygnał eksploatacyjny zostanie wyprodukowany, jeśli miernik działa poprawnie. W przeciwnym razie wymień baterie w multimetrze na nowy.
  5. Umieść czarny ołów na styku 3 lub 8 multimetru. Oba te piny są powszechne i wewnętrznie połączone. Wybierz dowolną szpilkę.
  6. Teraz umieść czerwoną lub pozytywną przewagę multimetru na innych szpilkach siedmiu segmentów, takich jak 1 lub 5.
  7. Po dotknięciu czerwonej sondy, jeśli jakikolwiek segment świeci, wyświetlacz wynosi wspólna katoda.
  8. Zmieniać leady multimetrów, jeśli żaden segment nie świeci.
  9. Teraz podłącz czerwony przewód do pin 3 lub 8.
  10. Następnie umieścił czarny lub negatywny ołów na pozostałych szpilkach wyświetlacza. Teraz, jeśli któryś z segmentów świeci, Twój wyświetlacz jest Wspólna anoda, Jak we wspólnej anodzie, pin dodatnia jest powszechna, a reszta jest podłączona do ujemnego zasilania.
  11. Powtórz kroki, aby sprawdzić wszystkie inne segmenty wyświetlania jeden po drugim.
  12. Jeśli którykolwiek z segmentów nie świeci, będzie to wadliwe.

Oto obraz odniesienia do testu siedmiosegmentowego za pomocą a multimetr. Widzimy, że czerwony ołowiu znajduje się w com pin 8, a czarny jest w segmentowym styku, więc używamy Wspólna anoda siedem segmentów:

5: łączenie siedmiu segmentów z Arduino nano

Aby połączyć się z siedmiosegmentowym wyświetlaczem z Arduino Nano, będziesz potrzebować następujących materiałów:

  • Mikrokontroler Arduino nano
  • Wyświetlacz siedmiosegmentowy
  • Tablica chleba
  • Przewody zworki

Interfejsy Arduino nano z wyświetlaczami siedmioprzemianymi w kilku prostych krokach.

1: Najpierw podłącz siedmiosegmentowy wyświetlacz do płyty chlebowej.

2: Następnie podłącz Arduino Nano z siedmiosegmentowym wyświetlaczem za pomocą przewodów. Arduino nano zostanie użyte do wysyłania sygnałów na siedmiosegmentowy wyświetlacz, mówiąc, które segmenty należy włączyć lub wyłączyć.

3: Teraz napisz kod Arduino w IDE. Program będzie musiał wysłać sygnały do ​​konkretnych pinów na wyświetlaczu siedmiosegmentowym, mówiąc, które segmenty należy włączyć lub wyłączyć, aby wyświetlić określony znak numeryczny.

4: Arduino IDE zapewnia bibliotekę za pomocą której możemy łatwo kontrolować stan każdego segmentu za pomocą prostych poleceń.

5: Po napisaniu i przesłaniu programu do Arduino nano, siedmiosegmentowy wyświetlacz powinien zacząć wyświetlać znaki numeryczne zgodnie z programem.

5.1: Schemat

Aby najpierw zaprogramować siedem segmentów, musimy zaprojektować obwód i podłączyć go z Arduino Nano. Korzystanie z poniższego schematu odniesienia łączy płytę Arduino Nano z siedmiosegmentowym wyświetlaczem.

Po tabeli pinout dla Arduino Nano Connection z pojedynczym wyświetlaczem siedmiosegmentowym:

Kod PIN Nazwa pin Arduino Nano Pin
1 B D3
2 A D2
3 Com GND/VCC zależy od konfiguracji - wspólna katoda/anoda
4 F D7
5 G D8
6 dp Pin LED DOT
7 C D4
8 Com GND/VCC zależy od konfiguracji - wspólna katoda/anoda
9 D D5
10 mi D6

5.2: Sprzęt

Poniżej obraz pokazuje sprzęt Arduino nano i siedmiopasmowe:

5.3: Instalowanie wymaganej biblioteki

Po podłączeniu siedmiu segmentów musimy zainstalować bibliotekę w Arduino IDE. Korzystając z tej biblioteki, możemy łatwo zaprogramować Arduino nano z siedmioma segmentami. Przejdź do menedżera biblioteki wyszukiwanie SEVSEG Biblioteka i zainstaluj w Arduino IDE:

6: Kontroluj siedem segmentów za pomocą biblioteki z Arduino nano

Po zainstalowaniu biblioteki napiszemy kod Arduino za pomocą tej samej biblioteki.

6.1: Kod

Otwórz IDE i prześlij dany kod do Arduino Nano:

#Include "sevseg.H " /*zawierał siedmiopasmowe bibliotekę* /
SEVSEG SEVSEG; /*Utwórz bibliotekę siedmiosegmentową*/
void Setup ()

bajt sevensegments = 1; /*Liczba połączonych siedmio-segmentów*/
bajt commonpins [] = ; /*Zdefiniuj wspólny pin z siedmiu segmentu*/
BYTE LEDSEGTERPINS [] = 2, 3, 4, 5, 6, 7, 8; /*Zdefiniuj cyfrowe szpilki Arduino dla siedmioprawnego*/
Bool ResistorSonsegments = true; /*Przypisanie typu boolean do rejestrów Seven = Segment*/
SEVSEG.początek (common_anode, sevensegments, commonpins, ledsegmentPins, resperaSonsegments);/ *konfiguracja siedmiopasmowa */
SEVSEG.setBrightness (80); /*Jasność siedmiopasmowa*/

Void Loop ()

dla (int i = 0; i < 10; i++) /*Display number from 0 to 9 using for loop*/

SEVSEG.setNumber (i);
SEVSEG.RefreshDisplay (); /*Odśwież wyświetlacz siedmioprzesualny po każdej iteracji*/
opóźnienie (1000); /*Opóźnienie czasowe dla iteracji pętli*/

Kod zaczął od dzwonienia SEVSEG biblioteka. Następnie zdefiniowaliśmy liczbę segmentów, których używamy z Arduino Nano. Piny segmentu LED są zdefiniowane dla tablic nano nano. Zmień pin według rodzaju używanego Arduino nano.

Można użyć dowolnego z cyfrowych pinów Arduino nano. Następnie, ponieważ używamy Wspólna anoda Wpisz, więc zdefiniowaliśmy go w kodzie:

W przypadku Wspólna katoda Zastąp go na poniższy kod:

W końcu a Do Używana jest pętla, która wyświetla cyfry od 0 do 9 i odświeży wyświetlacz za każdym razem, gdy wyświetlana jest liczba:

6.2: Wyjście

Możemy zobaczyć siedem segmentów wyświetlanych liczbami od 0 do 9:

7: Kontroluj siedem segmentów bez korzystania z biblioteki z Arduino nano

Aby kontrolować siedem segmentów bez żadnej biblioteki, musimy ręcznie zdefiniować liczby w kodzie Arduino w ich binarnej reprezentacji.

7.1: Kod

Otwórz IDE i połącz Arduino nano. Następnie przesłaj dany siedmiosegmentowy kod do Arduino Nano:

int segpins [] = 2, 3, 4, 5, 6, 7, 8;/*arduino pin dla siedmiopasmowego*/
bajt segcode [10] [7] = /*tablica numeru 0-9 w kolejności od g* /
// a b c d e f g
0, 0, 0, 0, 0, 0, 1, /*Wyświetl 0* /
1, 0, 0, 1, 1, 1, 1, /*Wyświetl 1* /
0, 0, 1, 0, 0, 1, 0, /*Wyświetl 2* /
0, 0, 0, 0, 1, 1, 0, /*Wyświetl 3* /
1, 0, 0, 1, 1, 0, 0, /*Wyświetl 4* /
0, 1, 0, 0, 1, 0, 0,, /*Wyświetl 5* /
0, 1, 0, 0, 0, 0, 0, /*Wyświetl 6* /
0, 0, 0, 1, 1, 1, 1, /*Wyświetl 7* /
0, 0, 0, 0, 0, 0, 0, /*Wyświetl 8* /
0, 0, 0, 0, 1, 0, 0, /*Wyświetl 9* /
;
void displayDigit (int cyfr) /*funkcja zainicjowania każdego segmentu* /

for (int a = 0; a < 7; a++)

DigitalWrite (segpins [a], segcode [cyfr] [a]);/ * instruujący odpowiednie segmenty dla liczb od 0 do 9 *//


void Setup ()

for (int a = 0; a < 7; a++) // for loop for setting the pins as output*/

pinmode (segpins [a], wyjście);


Void Loop ()

for (int b = 0; b < 10; b++)/* generating numbers from 0 to 9 */

displayDigit (b);/*wyświetl wygenerowane liczby*/
opóźnienie (1000);

W powyższym kodzie najpierw zdefiniowaliśmy cyfrowe piny dla Arduino Nano, w których połączone zostaną siedem segmentów. Tablica jest inicjowana w celu zdefiniowania liczby od 0 do 9.

Następnie wewnątrz tablicy Wszystkie 10 cyfr od 0 do 9 jest zdefiniowane w ich binarnej reprezentacji.

Następnie void Setup () Część A dla pętli jest zdefiniowana. To dla pętli z pomocą Pinmode Funkcja ustawia piny siedmiosegmentowe jako wyjście.

W końcu w Void Loop () Funkcja kolejna dla pętli jest zdefiniowana, która wygeneruje liczbę od 0 do 9 za każdym razem, gdy program będzie działał:

7.2: Wyjście

Tutaj możemy zobaczyć wszystkie liczby zdefiniowane w kodzie za pomocą ich binarnego odpowiednika są wyświetlane w siedmiu segmentach.

Wniosek

Podsumowując, interfejs siedmiosegmentowy wyświetlacz z mikrokontrolerem Arduino nano to prosty proces, który można wykonać za pomocą kilku podstawowych materiałów i odrobiny wiedzy na temat programowania. Dzięki kodowi Arduino Nano i Arduino możesz łatwo kontrolować stan każdego segmentu na wyświetlaczu siedmiosegmentowym, umożliwiając tworzenie niestandardowych wyświetlaczy numerycznych i innych interaktywnych projektów.