Spisu treści:
- Krok 1:
- Krok 2:
- Krok 3:
- Krok 4:
- Krok 5:
- Krok 6: Sterowanie wyświetlaczem
- Krok 7: Złóż wszystko razem
Wideo: Korzystanie ze starszych modułów VFD Noritake Itron: 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Od czasu do czasu można natknąć się na ciekawe części na ebayu, od znajomych lub po prostu grzebać w sklepach z używanymi rzeczami. Jednym z przykładów był ogromny próżniowy wyświetlacz fluorescencyjny Noritake Itron 40x2 znaków z 1994 roku (lub wcześniej), który został przekazany od klienta.
Początkowo wyglądało to na dość skomplikowane, jednak po pewnym czasie znaleziono arkusze danych i okazało się, że ma prosty interfejs szeregowy – i przy odrobinie pracy udało nam się go uruchomić, więc czytaj dalej, jeśli interesują Cię klasyczne VFD lub mieć podobną jednostkę.
Krok 1:
Szybkość transmisji interfejsu szeregowego jest określana przez zworki na płytce drukowanej.
Krok 2:
Zatem porównanie powyższej tabeli ze zworami w naszym module daje nam prędkość danych 19200 bps bez parzystości. Świetnie – takie połączenie możemy łatwo stworzyć z mikrokontrolerem z wyjściem szeregowym i poziomami logicznymi 5V; w naszych przykładach użyjemy płyty zgodnej z Arduino.
Krok 3:
Okablowanie VFD jest proste – zobacz białe zworki oznaczone CN2, jak pokazano wcześniej. Pin 1 to 5 V (potrzebujesz zewnętrznego zasilacza, który może zaoferować do 700 mA), pin 2 do cyfrowego pinu 7 Arduino, a pin 3 do Arduino i GND zasilania.
Używamy Arduino D7 z oprogramowaniem szeregowym zamiast TX, aby wyświetlacz nie wyświetlał śmieci podczas przesyłania szkicu. Następnie wystarczy po prostu wysłać tekst na wyświetlacz, na przykład oto szybki szkic demonstracyjny:
// Praca z modułami Noritake Itron VFD - model CU40026SCPB-T20A #include SoftwareSerial VFD(6, 7); // RX, TX
pusta konfiguracja()
{VFD.początek (19200); }
pusta pętla()
{ VFD.print("Witaj świecie. To jest VFD Noritake "); // Możesz wysadzić tekst do {} while (1); }
Krok 4:
Co skutkuje następującymi…
Krok 5:
Jeśli nie interesuje Cię kolor lub intensywność wyświetlacza, wypróbuj pleksiglas na wierzchu – na przykład…
Krok 6: Sterowanie wyświetlaczem
W tym momencie będziesz potrzebować arkusza danych technicznych. Jak widzieliście wcześniej, pisanie tekstu jest bardzo proste – wystarczy użyć funkcji.print. Jednak możesz chcieć wysłać pojedyncze znaki, a także specjalne polecenia do sterowania aspektami wyświetlacza. Zostały one opisane w arkuszu danych – patrz tabele „Polecenia oprogramowania” i „Czcionki znaków”.
Jeśli chcesz wysłać pojedyncze polecenia – na przykład „wyczyść wyświetlacz” o wartości 0x0E, użyj polecenia.write, takiego jak:
VFD.write(0x0E); // wyczyść wyświetlacz
Niektóre komendy są w formie kodów ucieczki (pamiętasz je?), więc musisz wysłać ESC, a następnie następujący bajt, np. aby zmienić jasność na 50%:
VFD.write(0x1B); // ESC VFD.write(0x4C); // jasność VFD.write(0x40); // 50% jasności
Uzbrojeni w tę wiedzę i arkusze danych możesz teraz wykonywać wszystkie polecenia. Zgodnie z arkuszem danych możliwa jest zmiana czcionek, jednak bez względu na to, jaką zworkę sprzętową lub polecenie, które wypróbowaliśmy, nie zmieniłaby się w stosunku do japońskiej czcionki katakana. Twój ekran może się różnić. W przypadku korzystania z funkcji „priorytet zapisu na ekranie” należy przestrzegać arkusza danych w odniesieniu do wydłużonego czasu „zajętości” opóźniając kolejne zapisy na wyświetlaczu o milisekundę.
Krok 7: Złóż wszystko razem
Zamiast wyjaśniać każde możliwe polecenie, umieściłem te typowe w udokumentowanych funkcjach w poniższym szkicu demonstracyjnym, po którym następuje krótkie wideo przedstawiające działanie szkicu.
// Praca z modułami VFD Noritake Itron - model CU40026SCPB-T20A// John Boxall 2013
#włączać
OprogramowanieSerial VFD(6, 7); // rx, tx
pusta konfiguracja()
{VFD.początek (19200); // ustaw prędkość dla portu szeregowego oprogramowania resetVFD(); VFDclearceen(); // VFD.write(0x12); // tryb przewijania w pionie (wł.) }
nieważne resetowanie VFD()
// wykonuje reset programowy na kontrolerze VFD { VFD.write(0x1B); // ESC VFD.write(0x49); // reset oprogramowania }
nieważna nowa linia VFD()
// przenosi kursor na początek następnej linii { VFD.write(0x0D); // powrót karetki VFD.write(0x0A); // nowy wiersz }
nieważne VFDclearceen()
// przesuwa kursor do lewego górnego rogu i czyści wyświetlacz { VFD.write(0x0E); // wyczyść wyświetlanie VFD.write(0x0C); // formularz - kursor do lewego górnego rogu }
nieważne VFDjasność (kwota w wysokości)
// ustawia jasność VFD - 25/50/75/100% // używa sekwencji ESC { switch(amount) { case 25: VFD.write(0x1B); // ESC VFD.write(0x4C); // jasność VFD.print(0); // 25% przerwa jasności; przypadek 50: VFD.write(0x1B); // ESC VFD.write(0x4C); // jasność VFD.write(0x40); // 50% przerwa jasności; przypadek 75: VFD.write(0x1B); // ESC VFD.write(0x4C); // jasność VFD.write(0x80); // 75% przerwa jasności; przypadek 100: VFD.write(0x1B); // ESC VFD.write(0x4C); // jasność VFD.write(0xC0); // jasność 100% } }
nieważne znaki VFD()
// prześledź znaki dla wybranej czcionki { for (int i = 21; i < 256; i++) { VFD.write(0x16); // podkreślenie kursora wyłączonego VFD.write(i); opóźnienie (100); } }
void moveCursor(pozycja w bajtach)
// przesuwa kursor - górny rząd to 0~39, dolny rząd to 40~79 // tryb przewijania w pionie musi być wyłączony, jeśli jest używany { VFD.write(0x1B); // ESC VFD.write(0x48); // przesuń kursor VFD.write(pozycja); // Lokalizacja }
pusta pętla()
{ VFD.zapis (0x16); // podkreślenie kursora wyłączone VFD.print("Witaj świecie - linia pierwsza."); // Możesz wysadzić tekst delay(1000); Nowa linia VFD(); VFD.print("Witaj, świecie - wiersz drugi."); opóźnienie (1000); VFDclearceen(); Jasność VFD(25); VFD.print("*** 25% jasności ***"); opóźnienie (1000); VFDclearceen(); Jasność VFD (50); VFD.print("*** 50% jasności ***"); opóźnienie (1000); VFDclearceen(); Jasność VFD(75); VFD.print("*** 75% jasności ***"); opóźnienie (1000); VFDclearceen(); Jasność VFD (100); VFD.print("*** 100% jasności ***"); opóźnienie (1000); VFDclearceen();
Znaki VFD();
VFDclearceen();
for (int i = 0; i < 80; i++) { VFD.write(0x16); // podkreślenie kursora wyłączone moveCursor(i); VFD.print("X"); opóźnienie (100); przesuńKursor(i); VFD.print(" "); } VFDclearsceen(); }
Mamy nadzieję, że uznałeś to za interesujące i pomocne.
Ten post jest dostarczany przez pmdway.com – wszystko dla producentów i entuzjastów elektroniki, z darmową dostawą na całym świecie.
Zalecana:
Juuke - odtwarzacz muzyczny RFID dla osób starszych i dzieci: 10 kroków (ze zdjęciami)
Juuke - odtwarzacz muzyki RFID dla osób starszych i dzieci: To jest pudełko Juuke. Juuke Box to Twój własny muzyczny przyjaciel, zaprojektowany tak, aby był jak najłatwiejszy w użyciu. Jest specjalnie zaprojektowany do użytku przez osoby starsze i dzieci, ale oczywiście może być używany przez wszystkie inne grupy wiekowe. Powodem, dla którego to stworzyliśmy, jest
ESP8266 - Czujniki drzwi i okien - ESP8266. Pomoc dla osób starszych (zapomnienie): 5 kroków
ESP8266 - Czujniki drzwi i okien - ESP8266. Pomoc w podeszłym wieku (zapomnienie): ESP8266 - Czujniki drzwi/okien wykorzystujące GPIO 0 i GPIO 2 (IOT). Można go przeglądać w Internecie lub w sieci lokalnej za pomocą przeglądarek. Widoczne również za pośrednictwem „HelpIdoso Vxapp” podanie. Wykorzystuje zasilanie 110/220 VAC dla 5Vdc, 1 przekaźnik / napięcie
Skaner ratunkowy dla osób starszych: 6 kroków
Skaner ratunkowy dla osób starszych: Ten projekt opiera się na pomocy osobom starszym. Osoby starsze są zwykle same w domu i mogą nie znajdować się w pobliżu natychmiastowej pomocy, jeśli upadną. Obecnym rozwiązaniem na rynku jest zastosowanie SOS, który noszą wokół
ESP8266 - gniazdo czasowe i zdalnie sterowane (zabezpieczenia dla osób starszych): 6 kroków
ESP8266 - gniazdo czasowe i zdalnie sterowane (zabezpieczenia dla osób starszych): INFORMACJE: Ten montaż sprawdza się przed przegrzaniem, pożarem i wypadkami w przypadku zapomnienia podłączonych urządzeń (głównie przez osoby starsze z chorobą Alzheimera). Po naciśnięciu przycisku gniazdo otrzymuje 110/220 VAC przez 5 minut (kolejne
Korzystanie z modułów zegara czasu rzeczywistego DS1307 i DS3231 z Arduino: 3 kroki
Korzystanie z modułów zegara czasu rzeczywistego DS1307 i DS3231 z Arduino: Ciągle otrzymujemy prośby dotyczące korzystania z modułów zegara czasu rzeczywistego DS1307 i DS3231 z Arduino z różnych źródeł – więc jest to pierwszy z dwuczęściowego samouczka na temat ich używania. W tym samouczku Arduino mamy dla nas dwa moduły zegara czasu rzeczywistego