Hej tam! Jako dostawca wyświetlaczy znakowych LCD często jestem pytany o sposób wyświetlania przewijanego tekstu na tych sprytnych małych ekranach. Jest to bardzo przydatna funkcja, niezależnie od tego, czy wyświetlasz paski wiadomości, długie wiadomości, czy po prostu chcesz dodać odrobinę elegancji swojemu projektowi. Przejdźmy więc do rzeczy i odkryjmy, w jaki sposób można przewijać tekst na wyświetlaczu LCD.
Zrozumienie wyświetlanych znaków LCD
Na początek przyjrzyjmy się szybko, czym są wyświetlacze znakowe LCD. Są to proste wyświetlacze, które mogą wyświetlać znaki alfanumeryczne. Występują w różnych rozmiarach, np0802 Wyświetlacz LCD, który ma 8 znaków w linii i 2 linie; theWyświetlacz LCD 40x2, oferując 40 znaków w linii i 2 linie; iWyświetlacz LCD 16x4, z 16 znakami w linii i 4 liniami. Każdy wyświetlacz ma określoną liczbę komórek znakowych i aby wyświetlić tekst, należy pracować w granicach tych komórek.
Podstawy przewijania tekstu
Koncepcja przewijania tekstu na wyświetlaczu znakowym LCD jest całkiem prosta. Zasadniczo przenosisz tekst z jednej strony wyświetlacza na drugą, znak po znaku. Daje to iluzję ciągłego strumienia tekstu. Istnieją dwa główne typy przewijania: poziome i pionowe. Przewijanie w poziomie jest bardziej powszechne, gdy tekst przesuwa się od prawej do lewej i odwrotnie. Przewijanie w pionie przesuwa tekst w górę lub w dół wyświetlacza.
Konfiguracja sprzętu
Zanim będzie można rozpocząć przewijanie tekstu, należy odpowiednio skonfigurować wyświetlanie znaków na wyświetlaczu LCD. Zazwyczaj podłączasz wyświetlacz do mikrokontrolera, takiego jak Arduino lub Raspberry Pi. Będziesz musiał podłączyć piny zasilania (VSS, VDD, VO), piny sterujące (RS, RW, E) i piny danych (zwykle 4 lub 8 pinów). Upewnij się, że postępujesz zgodnie z arkuszem danych konkretnego wyświetlacza LCD, aby uzyskać dokładne informacje na temat połączeń pinów.
Wdrażanie oprogramowania
Po skonfigurowaniu sprzętu czas napisać kod umożliwiający przewijanie tekstu. Oto ogólny przegląd tego, jak można to zrobić w Pythonie przy użyciu Raspberry Pi iRPLCDbiblioteka, która sprawia, że praca z wyświetlaczami LCD jest dziecinnie prosta.
z RPLCD.i2c import CharLCD czas importu # Zainicjuj wyświetlacz LCD lcd = CharLCD(i2c_expander='PCF8574', adres=0x27, port=1, cols=16, wiersze=2, rozmiar kropki=8) message = "To jest długi komunikat, który będzie przewijany na wyświetlaczu LCD." # Funkcja przewijania tekstu def scroll_text(lcd, wiadomość): długość_wiadomości = len(wiadomość) dla i w zakresie(0, długość_wiadomości): lcd.clear() lcd.write_string(wiadomość[i:(i + 16)]) time.sleep(0.2) scroll_text(lcd, wiadomość)
W tym kodzie najpierw inicjujemy wyświetlacz LCD za pomocąRPLCDbiblioteka. Następnie definiujemy długą wiadomość. Theprzewijany_tekstfunkcja przegląda komunikat, za każdym razem czyszcząc wyświetlacz LCD i zapisując 16-znakowy segment komunikatu. Theczas.snu(0,2)line dodaje małe opóźnienie pomiędzy każdą aktualizacją, dając efekt przewijania.
Różne podejścia do przewijania
Istnieje kilka różnych sposobów implementacji przewijania, w zależności od wymagań.
Metoda bufora statycznego
W tym podejściu tworzysz bufor większy niż obszar wyświetlania. Ładujesz całą wiadomość do tego bufora, a następnie przesuwasz „okno” przez bufor, pokazując na każdym kroku różne części wiadomości na wyświetlaczu. Jest to świetne rozwiązanie w przypadku dłuższych wiadomości, ponieważ możesz dokładnie kontrolować, co jest wyświetlane i jak się porusza.
Charakter - według - Podejście charakterowe
Jest to najprostsza metoda, w której po prostu dodajesz znaki do wyświetlacza pojedynczo, a gdy wyświetlacz się zapełnia, zaczynasz usuwać znaki z lewej (lub prawej) strony. Jest łatwy do wdrożenia, ale może nie działać tak dobrze w przypadku bardzo długich wiadomości.


Fine — dostrajanie efektu przewijania
Możesz sprawić, że przewijany tekst będzie wyglądał jeszcze lepiej, dostosowując kilka parametrów.
Prędkość
Szybkość przewijania zależy od opóźnienia pomiędzy każdą aktualizacją. Jeśli zmniejszysz opóźnienie, tekst będzie przewijał się szybciej. Jeśli jednak będzie zbyt szybki, tekst może być trudny do odczytania. Możesz eksperymentować z różnymi wartościami opóźnienia, aby znaleźć idealny punkt.
Kierunek
Możesz zmienić kierunek przewijania. Zamiast przewijania od lewej do prawej, możesz przewijać od prawej do lewej lub nawet w pionie. Aby zmienić kierunek, wystarczy dostosować sposób aktualizacji wyświetlacza. Na przykład, jeśli chcesz przewinąć od prawej do lewej, zacznij od końca wiadomości i idź wstecz.
Wstrzymanie
Możesz dodać pauzy w określonych momentach przewijania. Może to być przydatne, jeśli chcesz wyróżnić konkretną część wiadomości. Możesz to zrobić, dodając dłuższe opóźnienie w określonych odstępach czasu w kodzie.
Rozwiązywanie problemów
Czasami możesz napotkać problemy z przewijaniem tekstu. Oto kilka typowych problemów i sposobów ich rozwiązania.
Tekst nie przewija się płynnie
Jeśli tekst nie przewija się płynnie, może to wynikać z kilku powodów. Najpierw sprawdź czas opóźnienia. Jeśli jest za krótki lub za długi, przewijanie może wyglądać nierówno. Konieczne może być również sprawdzenie połączeń sprzętowych. Luźne połączenia mogą powodować sporadyczne problemy z wyświetlaniem.
Nieprawidłowe obcięcie tekstu
Jeśli tekst jest nieprawidłowo obcinany, upewnij się, że poprawnie obliczasz okno wyświetlania. Musisz upewnić się, że nie próbujesz wyświetlić więcej znaków, niż wyświetlacz może obsłużyć na raz.
Wniosek
Wyświetlanie przewijanego tekstu na wyświetlaczu LCD to zabawna i użyteczna funkcja. Może dodać wiele funkcjonalności i atrakcyjności wizualnej do Twoich projektów. Niezależnie od tego, czy używasz go do prostego projektu hobbystycznego, czy do bardziej złożonego zastosowania komercyjnego, techniki, które tutaj omówiliśmy, powinny pomóc Ci zacząć.
Jeśli jesteś zainteresowany zakupem wyświetlaczy znakowych LCD do swoich projektów, jesteśmy tu, aby Ci pomóc. Oferujemy szeroką gamę wysokiej jakości wyświetlaczy, m.in0802 Wyświetlacz LCD,Wyświetlacz LCD 40x2, IWyświetlacz LCD 16x4. Skontaktuj się z nami, aby omówić Twoje specyficzne wymagania i rozpocząć kolejny projekt z doskonałym wyświetlaczem.
Referencje
- Oficjalna dokumentacja RPLCD
- Dokumentacja biblioteki Arduino LCD
- Arkusze danych różnych wyświetlaczy znakowych LCD
