Trzykrotny kod jest dla magistrali 4bit, i jest użyty dla pewności poprawnej konfiguracji trybu dla tej tej magistrali. Różnice dla KS0066U mogą polegać na dłuższym czasie inicjalizacji. Temat był już wielokrotnie omawiany na tym forum, przeważnie z okazji "KS0066U mi nie działa :(, HELP...." ;).
Dlaczego? Bo taki kod nic nie robi (nie zmienia stanu "maszyny abstrakcyjnej"), więc może zostać usunięty bez zmiany znaczenia programu. Rozwiązaniem jest np. dodanie w pętli [syntax=c]__asm__ volatile ("nop");[/syntax]
Pin od kontrastu mam wpięty przez rezystor 10k do masy (i nie chcę mieć na kontraście regulacji - ma on być stały) Ale to nie tak reguluje się kontrast. Równie dobrze mógłbyś podłączyć ten pin bezpośrednio do masy. Dołącz dodatkowo jeszcze rezystor jakieś 47k między zasilanie a pin kontrastu i zobacz czy coś się zmienia.
To fakt, co piszesz. W wielu książkach się z taką praktyką spotkałem, ale nikt tak na prawdę tego wprost nie uzasadniał. Po podłączeniu zasilania do wyświetlacza wyświetla się linijka, informująca o działaniu LCD i umożliwia ona nastawienie kontrastu. Żeby się jej pozbyć, trzeba ustawić LCD do pracy. I teraz, w sterowniku oryginalnym, pewnie jednokrotne...
Pin RW podłącz do masy. W funkcji string nie używasz zn. Przy inicjalizacji ustawienie trybu w 8-bitowy powinno być pierwsze. Zresztą przeczytaj datasheet (Initializing by instruction) tam masz napisane, że trzeba trzykrotnie wysłać 0x3F w dodatku z różnymi odstepami czasowymi, po włączeniu zasilania należy chwile odczekac. Wstaw jeszcze jakieś opóźnienia,...
Zalecałbym dokładne zapoznanie się z dokumentacją wyświetlacza. Teoretycznie nie powinno być różnicy pomiedzy sterowaniem prockiem, a przyciskami. Z ręcznym sterowniem może być trochę zabawy zanim wyświetli się jakakolwiek litera :) Najpierw musi być inicjalizacja wyświetlacza, a następnie odpowiednie komendy do wyświetlania liter. Kiedyś widziałem...
Przecież w programie nie ma takiego napisu...?
Witam, pomimo że problem wyświetlaczy LCD ze sterownikiem HD44780 był poruszany milion razy, nie znalazłem konkretnie wyjaśnionego (łopatologicznie) problemu sterowania tym przez LPT za pomocą interfejsu 4-bitowego. Bardzo proszę o pomoc w realizacji inicjalizacji takiego wyświetlacza (1x16 znaków), schemat podłączenia: LPT LCD d0 db4 d1 db5 d2 db6...
Kupiłem lcd z serii DOG 16x2 ale nie mogę go zainicjować. Ma ktoś jakieś doświadczenia z jego kontrolerem? Zestaw instrukcji jest zgodny z HD44780. Chcę wykorzystać tryb 4-bit. Pozdrawiam PC
Nie.
; lcd podlaczony do portu 1, mozna zmienic na dogodny ; ponizsze linie ster. mozna zmienic na dogodne lin_rw equ p3.1 lin_e equ p3.2 lin_rs equ p3.0 org 0 ;--------------init lcd ---------------- mov a, #38h ; interf.8-bit,2-wiersz,5x7pix call lcd_cont mov a, #0ch ; display on, reszta off call lcd_cont mov a, #1 ; clear display call lcd_cont ;------------koniec...
Witam. Mój wyświetlacza posiada 2linie po szesnaście znaków. Korzystam z biblioteki Radzia HD44780 http://radzio.dxp.pl/hd44780/hd44780_avr... Problem polega na tym , że po wpisaniu kodu: LCD_WriteText("Zakr. przetworn."); LCD_WriteText("0123456789"... LCD_WriteText("0123456789"... LCD_WriteText("Zakr....
Witam ostatnio kupilem na allegro wyswietlacz LCD DM157a, niestety za nic nie moge sobie poradzic z odpaleniem tego LCD. Niby sprawa jest prosta podlaczenie zasilania i kolejno wyjsc, ale u mnie nie chce ruszyc, zrowno probowalem przez port dukarki LPT jaki i przez uC PIC. Po podaniu zasilania wszystkie segmenty sie pala ale wykonanie jakiejkolwiek...
Ponieważ LCD może być inicjalizowany w każdym momencie nawet kilkukrotnie w programie i musi być pewność, że inicjalizacja nastąpi niezależnie od tego czy w danym momencie po poprzednich inicjalizacjach jest ustawiony 4 bitowy interfejs czy 8 bitowy. Inicjalizacja jest przeprowadzona przy domniemaniu, że kontroler jest w najgorszym przypadku, czyli...
Posiadam takowy wyświetlacz 2x16 bądź 2x20 znaków. Jak wygląda inicjalizacja w trybie 8 bitowym (czasy oczekiwania)? W większości postów jest mowa o trybie 4 bitowym.
twój LCD jest na sterowniku zgodnym z HD44780 czyli powinień smigać bez problemu... Czy masz jakiś problem z wysterowaniem tego LCD ? Działa ilaczej czy coś innego ? pozdr KN
Nie wiem czy zwróciłeś uwagę , ale po 1-szym zatrzaśnięciu function set , w specyfikacji HD44780 stoi wyraźnie Wait for more than 4.1 ms . To skąd u diabła ;) u Ciebie , wzięło się 100us :?: Piotrek
Witam, Bez zbędnych formalności przejdę do opisu: [url=http://radzio.dxp.pl/hd44780/hd4478... schemat połączeń. Podpiąłem: RS-PD3, E-PD4, D4-PD5, D5-PD6, D6-PD7, D7-PD0. Korzystam z bioblioteki radzia(4-bitowy tryb pracy bez odczytu flagi zajętości). Oto mój kod w "main.c" [syntax=c]#include "HD44780.h" int main(){ LCD_Initalize();...
Witam, podales tak malo danych o ukladzie ze mozna tylko zgadywac, ogolnie "prostokaty pojawia sie gdy z jakiegos powodu wyswietlacz po wlaczeniu napiecia nie zostal zainicjowany. W twoim przypadku oznacza to ze w chwili wlaczenia "tego czegos" co pobiera 2kW masz spadek napiecia powodujacy reset wyswietlacza, jako ze byl on juz wczesniej zainicjowany...
Witam wszystkich, Próbuję uruchomić wyświetlacz LCD znakowy 2x40 ze sterownikiem hd44780 na procesorze STM32L na płytce STM32L-Discovery. Korzystałem z książki "STM32 Aplikacje i ćwiczenia w języku C" Marka Galewskiego. Do książki były dołączone pliki biblioteczne do obsługi właśnie hd44780. Wykorzystałem te pliki, zmieniłem jedynie port pod który podpiąłem...
Zastanów się nad użyciem petli while, bo w pierwszym programie w petli cały czas czyścisz i wyświetlasz coś, więc może tego nawet nie zobaczysz tak szybko będzie się zmieniać. Natomiast w drugim programie nic ci się nie wyświetli bo program wpadnie w nieskończonę petlę i już z niej nie wyjdzie, instrukcje po while(1); już się nie wykonają. Zrób tak....
Witam. Używam tych wyświetlaczy po raz pierwszy dlatego mam kilka pytań. Chcę aby po włączeniu zasilania wyświetlacz był gotowy na przyjmowane danych i instr (tryb 8 -bitowy). Wobec czego: - czy w trakcie pisania programu obsługującego LCD powinienem napisać funkcję inicjalizującą cały wyświetlacz
R/W - mam zwarte na stałe do masy LCD_Enable: RCall Wait_10ms Sbi LCD_Port,LCD_E RCall Wait_10ms Cbi LCD_Port,LCD_E Ret LCD_Init:;czekaj 15ms RCall Wait_10ms RCall Wait_5ms ;konfiguruj port Ldi Acc,255 Out LCD_DDR,Acc ;krok 1 Cbi LCD_Port,LCD_E Cbi LCD_Port,LCD_RS Cbi LCD_Port,LCD_D7 Cbi LCD_Port,LCD_D6 Sbi LCD_Port,LCD_D5 Sbi LCD_Port,LCD_D4 RCall...
Dzień dobry, na początek kod: [syntax=C] #include <avr/io.h> #include <util/delay.h> #include "HD_BIB.h" //to jeszcze nie funkcjonuje #define E_ON PORTD|=(1<<1) #define E_OFF PORTD&=~(1<<1) void HalfByte(uint8_t data) { if(data&(1<<0)) PORTC|=(1<<0); else PORTC&=~(1<<0); if(data&(1<<1))...
a może najłatwiej będzie użyć gotowej biblioteki ?? http://radzio.dxp.pl/hd44780/hd44780_avr... Tez kiedyś się bawiłem w robienie samemu ale szkoda czasu. PS. SET_E; write_command(0x03); delay_ms(10); CLR_E; Powyższy kod jest zły ponieważ najpierw oczyszczasz E a potem czekasz.
Jaki tryb portu drukarki powinien być ustawiony, coby wyświetlacz ruszył? Mam normal, ecp, epp, ecp+epp. Jak sterowałem pinami z pascala to używałem ecp, ale tutaj nie jestem pewien. Nie chodzi mi o jakies wielkie sterowanie tylko czy ten elcedek jest dobrze polutowany i działa, drivery do windy niby poinstalowane... Ma ktoś może w miarę przystępnie...
Problem wygląda tak, że wyświetlacz już mi kiedyś działał i to z dwoma różnymi bibliotekami, obecnie nie wiedzieć czemu wygląda to tak. Wszystko poprawnie podłączone, sprawdzane 1000 razy. Program skompilowany, wgrany, zeby napisal poprostu 'marek' . #include <avr/io.h> #include "lcd.c" int main(void) { char buffer[7];...
Cześć, od jakiegoś czasu zmagam się z problemem dość podstawowym i - jak to zazwyczaj w takich przypadkach bywa - wyczerpały mi się pomysły na jego rozwiązanie. Podłączam LCD do Atmegi8 zgodnie z następującym schematem: http://radzio.dxp.pl/hd44780/hd44780_avr... , a więc tryb 4-bitowy z odczytem flagi zajętości (R/W wyświetlacza podłączone...
JAKIE SĄ PARAMETRY WYŚWIETLACZA LCD TYP WC1602? Z GÓRY DZIEKI ZA ODPOWIEDZ
Chciałem się dowiedzieć czy wyświetlacz LCD 2x16 typ WC1602 jest oparty o sterownik HD44780? Ostatnio próbuje go skonfigurować wykorzystując do tego AT90s2313 w asemblerze i już nie mam pomysłów jak to zrobić. Postępując według dokumentacji konfiguruje wszystko jak trzeba. Wypróbowałem przerabiając programy znalezione w sieci i nic. Na wyświetlaczu...
Walczę z wyświetlaczem LCD hd44780 4x20 (Konwerter I2C), żeby skorzystać z polskich znaków. Wyczytałem, że można wgrać tylko 8 własnych znaków. Dla mnie to za mało - potrzebuję więcej. Szukam więc rozwiązania, które pozwoli mi na wgranie ich więcej. Pierwsze co przyszło mi do głowy to oczywiście próba adresowania adresów od 9 do 16. Kod poniżej - ale...
Witam! Próbuję napisać sterownik do wyświetlacza LCD zgodnego z HD44780ale bezskutecznie. W trybie debugowania, woltomierzem sprawdzałem po kolei, czy mikrokontroler dobrze ustawia każdy z pinów. I jest tak jak w kodzie. RW jest na stałe podpięte do masy. Częstotliwość taktowania procesora : 8 MHz Wyświetlacz: 2 wierszowy Rozmiar Znaku: 5x8 <-- Też...
Witam. od kilku dni usiłuję napisać program inicjalizujący LCD w taki sposób aby na wyświetlaczu migał kursor i zeby nic więcej nie robił. Chciałbym żeby był sterowany w trybie 8 bitowym. wyświetlacz jest podłączony do portu P0. linie sterujące są podłączone następująco: RS= P2.4 R/W= p2.3 E= p2.2 czy ma ktoś na to jakiś prosty sposób?? dodam że po...
Witam. Wiem, że temat wygląda podobnie do wielu innych tematów, ale rady podane w tychże nie pomogły. Mam płytkę, gdzie dane przesyłane są przez port A (D0...D7 - PA0...PA7) natomiast linie sterujące są podłączone do portu C (E-PC7,RW-PC6,RS-PC5). Płytka jest sprawdzona omomierzem i wszędzie są przejścia. Napisałem kod w AVRStudio4: ldi r16,0xFF;ustawienie...
Witam! Ma ktoś może jakąś dokumentacje co do sterowania HD44780 w trybie 4-bitowym wraz z samym włączeniem go?
Witam. To jest mój pierwszy układ. Mam podłączonego lcd do atmegi wg schematu ze strony: http://radzio.dxp.pl/hd44780/hd44780_avr... PB2 -RS, PB3 - RW, E - PB4, 8 bitów danych do PORTC. Korzystam z oprogramowania WinAvr gcc + PonyProg. Program obsługi tego LCD także ściągałem z tej strony. Problem mam w tym, że nie potrafie nic na tym wyświetlaczu...
JTAG może? *Nie patrzyłem w kod*
Witam. Mam podobny problem tez z At128 i właśnie z portem A . Inicjalizacja się nie powodzi i do tego albo sa kwadraciki albo nic niema. Czasem nawet kursor się pokaże ale nic nie reaguje na komendy. Wie juz wiesz co było u Ciebie przyczyną? Ja dziś sprawdze jak mi ktoś poradził tu własnie na forum by zmienić bit konfiguracyjny kompatybilności z Atmega103...
https://obrazki.elektroda.pl/9365002800_... W poprzedniej części opisałem zasadę działania i podstawy sterowania wyświetlaczy VFD, w tej części przejdę do praktycznych działań :D które większość z Was pewnie bardziej zainteresuje. Nowe wyświetlacze są stosunkowo kosztowne w zakupie i nie równoważy tego fakt że przeważnie zawierają...
Ostatecznie po każdym użyciu przekaźnika inicjalizacja lcd :)
Postaraj się bardziej, zbliż graficzny wygląd do ekranu HD44780, zawrzyj graficzny wygląd z wyświetlacza znaków Aby stworzyć bardziej szczegółowy i wizualnie wierny emulator wyświetlacza HD44780 w P5.js, musimy uwzględnić nie tylko podstawowe wyświetlanie tekstu, ale również graficzną reprezentację pikseli, które tworzą znaki na wyświetlaczu. Dla uproszczenia,...
Witam i proszę o sprawdzenie mojego kodu. Kod był pisany za pomocą Chat GPT. Jestem początkującym w programowaniu tego typu sprzętu. Na płytce stykowej jest ATtiny2313 z kwarcem 16 MHz. Wyświetlacz pokazuje kwadraciki. ); } while (1) { // Pętla nieskończona } return 0; } https://obrazki.elektroda.pl/8749906500_... [/syntax]
Pomierzyłem i sprawa wygląda tak: - zamiast 5V na pinie (kochany producent, naprawdę można im ufać...) mam 4,52V. Uwzględniając błąd miernika (nie jest z górnej półki, ale 10zł też nie kosztował) wartość będzie w zakresie 4,4-4,6V. Nie ma to jak deklaracja producenta... - na pinie 3V mam 2,92V, więc można uznać że mieści się w granicy błędu. - na pozostałych...
Procesor to atmega16L z wewnętrznym kwarcem 8Mhz (dodefiniowałem F_CPU 8000000L). bardzo ciekawe to co napisales, bo domyslnie ta atmega ma ustawiony oscylator 1MHz, a nie 8. do tego na porcie C ma cos takiego co sie zwie JTAG, co wypadaloby najpierw wylaczyc, jesli tego uzywasz. nie mam ochoty na wiecej zgadywanek, bo ani nie dalej schematu, ani calosci...
No ja sprawdziłem "na żywca". Działa. Sprawdź dobrze połączenia. Po połączeniu musisz zrobić reset układu, żeby wykonała się inicjalizacja sterowników HD44780.
Zapala się przed inicjalizacja i gasi po
Może inicjalizacja jest za szybko po włączeniu zasilania.
Witam, potrzebuję uruchomić wyświetlacz jak w temacie i napisałem kod (w sumie przerobiłem na swoje potrzeby przykład z internetu). Wyświetlacz ma pracować w trybie 4-bitowym i linia RW ściągniętą do masy. I nie jestem w stanie ruszyć wyświetlacza - cały czas mam na gornej linii kwadraty, a dolna jest pusta. Przeczytałem, że to znaczy, że inicjalizacja...
... Odnośnie sygnału Enable to ja się doszukałem że właśnie najpierw trzeba go ustawić w stan wysoki a dopiero później zmienić dane. To źle doszukałeś :( Spójrz poniżej na zależności dla HD44780 (chyba że masz inny sterownik) Pozdrawiam Piotrek
Tmf - jezeli on miałby organizację 8x1 to te kwadraty miałyby kolor tła po inicjalizacji. oczywiście wtedy trzeba (mialem kiedys takie cudo) do drukowania na drugiej czesci linii pierwszej przesuwac na adres 40 a drugiej nie pamietam ale łatwo policzyc (10 i 50). Ale inicjalizacja i czyscczenie działa tak samo na obu czesciach obrazu.
Tak to byla inicjalizacja a odkrylem to dosc nietypowo. sterowanie wyswietlacza jest w formie czterobitowej. przy resecie przycisnalem palcem pod mikrokontroler (pewnie zaklucilem prace kwarca) i ruszyl poprawnie. przeczytalem jeszcze gdzies w postach ze wyprowadzenia P1.0 i P1.1 sa nie podciagniete (wejscie analog) i moze przez to tez glupial, zaraz...
W przypadku GCC na LCD pojawia się 8 kwardacików Co może być nie tak ? Inicjalizacja jest zła. Masz włączoną optymalizację ?
Witam wszystkich, czy ktoś może miał do czynienia z LCM1602, czy są jakieś biblioteki do obsługi (dokładnie jest to LCM1602DSL). Korzystam z tej biblioteki jak na razie: http://radzio.dxp.pl/hd44780/hd44780_avr... , chodzi o to, że podłączony był HD44780 do UC i nie było najmniejszego problemu, wszystko śmigało, wymieniłem wyświetlacz i...
Witam. Napisałem swoją bibliotekę do wyświetlacza w temacie, ale niestety są z nią problemy. [syntax=c]#include <avr/io.h> #include "HD44780.h" #include <avr/delay.h> int main(void) { LCD_Initalize(); for(int i=0; i<30; i++) LCD_WriteData('a'); while(1); return 0; }[/syntax] Na wyświetlaczu powinien wyświetlić się ciąg znaku "a", ale...
Wyswietlacz zaczal reagowac, ale musze przyciskac paraokrotnie reset zeby pojawil sie kursor. Swoja droga pojawia sie on w przypadkowych miejscach, dopiero po kilku znowu resetach wskakuje na lewy gorny rog. Jesli chce cos wyswietlic to japierw wypisuje krzaki, pozniej tekst ale tylko krotki (jak mowi po mozolnym prziskani reset). Tak jak pisalem wczesniej...
Zgodnie z dokumentacjąVFD połączenie szeregowe powinno być połączone bezpośrednio z PC (poziomy +3 do +15 i -3 do -15) a poziomy TTL tylko na szynie danych. Jeśli masz połączenie szeregowe do J1-14 to właśnie poziomy napięć mogą być problemem. Konfiguracja wyświetlacza zworkami (zgodnie z datashet str. 20). Z AVR lepiej go użyć w trybie zgodności z...
Dlatego najlepiej napisać obsługę wyświetlacza w przerwaniu, a nie czekać aż się zmieni stan na jakimś pinie. Obsługa wyświetlacza na HD44780 w przerwaniu to jakaś masakra a nie rada dla początkującego. W przerwaniu (i to częściowo) można robić VGA albo composite ;) Inicjalizacja powinna być tam gdzie wszystkie inity w programie typu system_init, main_setup...
Nie można mieć wszystkiego [; EDIT: Kolejna idea - podobnie jak w I2C robi się konwersję poziomów napięć (jeden mosfet) tak samo można zrobić sterowane "gniazda" dla kilku czujników 1-wire. Inicjalizacja po kolei (aby odczytać numerki), a potem już wszystko na raz włączone i po ID. 4\/3!!
Witam, otóż zasilam owy wyświetlacz napięciem ±3.3V, a także stany logiczne są na tym poziomie. Pin kontrastu jest podpięty bezpośrednio do masy, kontrast wizualnie wydaje się być dobrany idealnie. I problem w tym, że pixele bardzo wolno się zapalają.(wyszło mi ok. ~300ms na pełne zaświecenie pixela) Czy jest to jest maksimum wyświetlacza, czy...
Witam Mam maly problem z wyswietlaczem, udało mi sie go obsługiwać, tylko jest problem z resetem, wygląda to tak. Po wlączeni układu wyswietlacz dzila poprawnie (jest opożnienie w procku zaim zacznie wysylac dane do lcd), problem pojawia sie gdy zresetuje uK, na wyswietlaczu pojawiaja sie smieci, jak zresetuje jescze raz wszystko jesj ok i tak wkolo....
inicjalizacja hd44780 inicjalizacja samsung inicjalizacja pamięci
kolor czerwony monitor panel wzmacniacza subwoofer sterowanie centralny civic
Alarm Steeli Men nie wyłącza się - przyczyny i rozwiązania Rozwiercanie tulejek rozrusznika Polonez: wymiary i wskazówki