Uzywasz wtedy tylko linie danych: DB4-DB7, czyli DB0-DB3 nie podlanczasz. Polecam note HD44780.
Algorytmy, algorytmy, algorytmy... Wszystko zależy od inwencji :) . Ja mam u siebie ostro podzielone, i potem jest łatwo wymieniać moduły i zmieniać funkcjonalność. Przede wszystkim wymiary lcd musisz przechowywać, proponuję zmienne, żeby była łatwość wymiany lcd. Poza tym przechowujesz pozycję kursora i przy każdym znaku ją aktualizujesz - nie musisz...
jakikolwiek 2*16 znaków na hd44780 lub kompatybilnym, bibliotek jest na prawdę multum w sieci... http://radzio.dxp.pl/hd44780/
Jest coś takiego jak: itoa w helpie musisz zerknąć jej składnię bo akurat nie pamiętam.
A zna ktoś ten model wyświetlacza może on nie do końca kompatybilny ze sterownikiem hd44780?? A działa Ci w trybie 4 bitowym z bibliotekami od radzia?
Na początku kodu wstaw : #include <avr/io.h> Nie trzeba niczego zmieniać w oryginale, ATmega8 ma te rejestry...
No i nic nie zobaczysz dopuki ... nie ustawisz odpowiedniego kontrastu! Proponuję potencjometr lub rezystory stałe wg schematu Vcc - 10kohm - końcówka 3 wyświetlacza - 470ohm(do 1kohm - dobierz) - masa. Ja lutuję takiego pająka na wyświetlaczu. Pasował dotychczas do wszystkich moich LCD z HD 44780.
Niestety raczej nie. Takie podłączenie prawdopodobnie uszkodziło obwody procesora sterujące delikatną strukturą wyświetlacza. Zalecam kupno nowego. Pozdrawiam Marek
Mają tam być cudzysłowy: #include "hd44780.h"
... To teraz jestem w kropce :) Co mogłem zrobić źle w układzie z mikrokontrolerem?... Nie ma co panikować :wink: Spróbujmy inaczej.W załaczniku masz 2 gotowce.Załaduj do proca i ... zobaczymy czy którykolwiek zadziała :) Pozdrawiam Piotrek
Prawdopodobnie zamiast: LCD_WriteText(0x00); powinno być: LCD_WriteData(0x00); Trudno stwierdzić bez kodu biblioteki [HD44780.c].
Tak trudno użyć Google? Możesz użyć chociażby http://radzio.dxp.pl/hd44780/hd44780_avr... http://hobby.abxyz.bplaced.net/index.php... i wiele innych...
http://www.elektroda.pl/rtvforum/topic90...
Tak, wg noty musi to być 0,5us.
Tu masz przykład: http://radzio.dxp.pl/hd44780/hd44780_avr...
Tu jest program: http://mikrokontrolery.net/avr_c_08.htm schemat połączenia możesz odczytać tu: #define LCD PORTB Wyświetlacz jest sterowany 4bitami więc podłączamy DB7(końc. 14 LCD) do Portb.7 µC, DB6(końc. 13 LCD) do Portb.6 µC, DB5(końc. 12 LCD) do Portb.5 µC, DB4(końc. 11 LCD) do Portb.4 µC, #define E 3 Linia sterująca E(końc....
Tak teraz wszystko jest poprawnie.
Kolego nie czytałem bo tez miałem mętlik przy uruchamianiu HD44780 ale zobacz tu http://hobby.abxyz.bplaced.net/index.php... , masz wszystko jak na dłoni , działa na 100 proc. Niedawno co zacząłem zabawę z uP wiec warto się zapoznać i przeanalizować kody i próbować zmieniać wartości by zapamiętać kod. Pozdrawiam
Może nie zwieraj pinów DB0-DB3 do masy. Tu masz wytłumaczone dlaczego. http://mirekk36.blogspot.com/2012/04/lcd... Na pewno masz wszystko dobrze podłączone? Może wstaw zdjęcie to sprawdzimy.
Nie mogłeś tej funkcji użyć z kilkoma argumentami - przynajmniej nie w języku C. Chyba, że nas okłamujesz i jej prototyp wygląda inaczej...
Teraz jest tylko upomnienie że nie mam pliku main.c Znowu nie wiemy dokładnie jaki błąd, więc zrób to o co prosimy: Lepiej wrzucaj treść błędów. Jako oddzielny listing. a nie w postaci grafiki.
nie wiem czy nie powinieneś czyścić wyświetlacza przed każdym kolejnym pobraniem wartości "result"; char zm[4] - dlaczego dałeś tu tylko 5 miejsc? Pozdr.
To, że nie działa, to normalne - ta biblioteka nia ma prawa działać, bo jej kod gwałci wszystkie specyfikacje HD44780. Być może działa na niektórych wyświetlaczach przez czysty przypadek.
Wystarczy, że nie włączysz USART.
przy inicjalizacji LCD wykonaj: write_command(0x28); // interfejs 4-bity, 2-linie, znak 5x7 write_command(0x08); // wyłącz LCD, kursor i miganie write_command(0x01); // czyść LCD delay_ms(5); write_command(0x06); // bez przesuwania w prawo write_command(0x0c); // włącz LCD, bez kursora i mrugania
Spróbuj tak sprintf(tekst, "%02i:%02i:%02i%",godzina, minuta, sekunda, dziesiatka);
Spróbuj tego kodu : #define F_CPU 4000000 #include <avr/io.h> #include <stdlib.h> #include <avr/io.h> #define DDR_DB4 DDRD #define PORT_DB4 PORTD #define DB4 PD3 #define DDR_DB5 DDRD #define PORT_DB5 PORTD #define DB5 PD4 #define DDR_DB6 DDRD #define PORT_DB6 PORTD #define DB6 PD5 #define DDR_DB7 DDRD #define PORT_DB7 PORTD #define...
W archeologię się bawisz? Te bliblioteki są z czasów, gdy avr-gcc był tak naprawdę makroasemblerem. Może użyj jakichś nowszych?
OK. Pokaż program bo pokazałeś tylko bibliotekę. Możesz wrzucić jakieś zdjęcia z efektami na LCD i widokiem połączeń całości (nie tylko LCD)?
Kolego, spójrz na wywołanie pierwsze, to błędne. avrdude -p -c stk500v2 -P com3 -V -U flash:w:main.hex a teraz to drugie avrdude -p atmega8 -P com3 -c stk500v2 -U flash:w:testowy.hex nie widzisz różnicy? Wynika to z błędy w Makefile'u, przyznaje, z mojej winy. Szkoda, że nie przeglądasz tego pliku i nie starasz się zrozumieć jak to działa....
Pewien sterownik CO polskiej produkcji, HD44780 i Atmega8, standard, nie chcę reklamować, bo zawsze ktoś może się doczepić. PS Na "szczęście" to było kilka sztuk, następnym razem w tym najbardziej znanym sklepie wezmę chyba ON albo Fairchild, mniej powszechne...
Robienie takiej płytki nie ma żadnego sensu.Napisz do mnie na GG a przedstawię ci pomysł na płytkę.Za elementy zapłacisz 5zł więcej a o wiele urozmaicisz sobie zabawę z AVR :) GG:21682677
(at)ElektrodaBot Napisz program w Bascom dla Atmega8, który będzie liczył pojedyncze impulsy w ciągu 24 godzin z zapamiętaniem najkrótszego odstępu między tymi impulsami, wynik wyświetlał na wyświetlaczu 2x16 opartym na HD44780.
Witam Splc 780 jest kompatybilny z HD44780 jeśli chodzi o zwykłe znaki i cyfry (jakieś chińskie znaczki mogą się różnić dla hd44780 i splc), tamte układy oki to zapewne sterowniki lcd współpracujacez splc, a co do ustawień 2x16 to jesli tekst byłby dłuższy niz 16 znaków, to co w lcd 2x16 byłoby w pamieci, to w tym lcd bedziesz miał wyswietlone,
Witam Jestem nowy w świecie mikroprocesorów, i już mam problem. Mianowicie mam procesor ATMEGA8 i wyświetlacz LED 2x24 (HD44780), i problem z wyświetlaniem tekstu. Zamiast tekstu mam cały wyświetlacz w kwadracikach. (Sterownik do LED http://radzio.dxp.pl/hd44780/) hd44780.h [syntax=c]//----------------------------...
Przeanalizuje sobie te kody. Działają na pewno. http://radzio.dxp.pl/hd44780/
Możesz użyć choćby buforów trójstanowych i bawić się w sterowanie nimi tak aby w momencie kiedy jedna ATmega wpisuje coś do LCD, druga na szynę wystawia stan wysokiej impedancji, ale radziłbym się zastanowić czy potrzebujesz koniecznie dwóch uprocków. ATmega ma aż 6 kanałów ADC, powinno wystarczyć na podwójny multimetr
Wyświetlacz jest zgodny z HD44780.
Kwarcu brak, pracuje na wewnętrznym oscylatorze. 100 ms niestety nie pomogło. A te kable to mogą być takie długie? Wiem, że dla 1 Wire moze być nawet 100 m a dla HD44780?
Od kilku dni walczę z wyświetlaczem opartym o sterownik HD44780. Mój układ oparty jest o mikro kontroler ATMega8, sam wyświetlacz podłączony mam zgodnie z tym o to schematem: http://obrazki.elektroda.pl/8913556000_1... Nie jestem też pewny czy dobrze używam owego wyświetlacza. Ze strony http://radzio.dxp.pl/hd44780/hd44780_avr...
Przy odczycie flagi zajętości, 6 młodszych odczytanych bitów to właśnie adres kursora, jeśli ostatnio aktywna była pamięć DDRAM.
Kolega chyba na bakier z angielskim i czytaniem dokumentacji w ogóle. Pomijając dalszy opis w nocie dość jednoznacznie sposobem inicjalizacji, sygnałami itd. wskazujący na zgodność z HD44780, to z kontekstu całego dokumentu powinien się domyśleć że LCM w nocie to ichnia nazwa LCD (pewnie Liquid Crystal Matrix zamiast Display), a literka M oznacza standardowy...
ROM jest w porządku, maska A0 to standard, problem jest w tym że podczas konwersji i przesyłania mieszasz w kodach znaków, wystarczy sprawdzić że dla pierwszego przykładu (Ala ma kota) wszystkie znaki są przesunięte o 8 pozycji: http://www.sparkfun.com/datasheets/LCD/H... strona 17.
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...
Tak. Pozostałe wyprowadzenia tak jak napsiałem wyżej.
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....
Najlepsze jest definitywnie zwracanie wskaźnika na LOKALNĄ zmienną... 4\/3!!
No to zdefiniuj te symbole. Przykładowo tak: [syntax=c] enum menu_ev { UP, DOWN, BACK, OK, NONE, }; [/syntax]
Witam ! Pokaż program i schemat.
Posiadam wyświetlacz LCD WH2002M - fotka w załączniku (z dokumentacji sterownik ST7066U kompatybilny z HD44780) - 2x20znaków - znak 5x8 Podłączyłem z Atmega8 według schematu z załącznika. Wykorzystałem biblioteki z netu: [syntax=c] #include <avr/io.h> #include <util/delay.h> #define LCD_RS_DIR DDRD #define LCD_RS_PORT PORTD #define LCD_RS...
Witam. Wiem że temat już był, ale nie widziałem żeby ktoś pytał o piny 15 i 16 wyświetlacza 2*16 zgodnego z HD44780, więc powiedzcie co podłączyć do tych pinów. PS. Znalazłem taki schemat podłączenia ATMEGI8 do peryferiów gdzieś na tym forum i napiszcie czy czasem elektrolit C5 nie powinien być odwrotnie? tu link do schematu Pozdrawiamhttp://www.elektroda.pl/rtvfor...
Witam. Mam pewien problem z kompilacją prostego programu wyświetlającego na LCD napisu "Witam". Kod jest zaczerpnięty z książek "AVR & ARM7" P.Borkowski i trochę wiadomości z "Język C dla mikrokontrolerów AVR" T.Francuz. Podczas kompilacji wyświetlany jest komunikat: expected ")" before 'islong' w pliku hd44780.h w funkcji hd44780_wait_ready(bool...
To może za dużo tego kontrastu? (at)arktik: a co powiesz na zawartość hd44780.h?
A to źle? Oczywiście , że nie , ale na początek chyba łatwiej zmagać się z jednym problemem niż z dwoma na raz. (Nie będzie wiadomo w czym jest problem). Też jestem początkujący i jakoś z "bólami" ogarnąłem HD44780 . Nie wiem natomiast czy LCD z ATmegą po I2C (nawet sprzętowe - podobno prostsze ) mnie nie przerośnie........
No niestety nie błąd przepisujących listingi :) widzisz gdyby każdy ciąg znaków był zakończony 0 to nie potrzebny byłby drugi argument funkcji WyswietlLCD prawda? Normalnie wyświetlałbyś napis tak długo aż znak będzie miał wartość 0. Nie wszystkie kompilatory zgłoszą Ci błąd przy podaniu ciągu znaków dłuższego niż zadeklarowany rozmiar tablicy, co więcej...
Witam, stworzyłem na płytce stykowej układ, gdzie podłączyłem przyciski, LCD hd47780, rtc ds1307 i buzzer. Korzystam z bibliotek do wyświetlacza od "radzia", TWI od p. Mirka oraz ze znalezionej na tym forum biblioteki do RTC. Napisałem szybki program, który wyświetla godzinę w formie hh:mm:ss na ostatnich polach pierwszej linii. Dodatkowo dodałem przerwanie,...
Kręcenie potencjometrem nic nie daje. Zmienia tylko kontrast czarnych kwadracików. Oto plik HD44780.h [syntax=c]//----------------------------... // Wyświetlacz alfanumeryczny ze sterownikiem HD44780 // Sterowanie w trybie 4-bitowym bez odczytu flagi zajętości // z dowolnym przypisaniem...
mam ten sam wyświetlacz i ten sam objaw ... # w pierwszej linii i włączone podświetlanie mimo że nie podłączyłem zasilania do A (EL Backlight 1) i K (EL Backlight 2). Tak się zastanawiam czy aby jest on kompatybilny z HD44780 - w dokumentacji technicznej nie znalazłem takiej informacji - tylko sprzedający pisze że jest zgodny. Zasilanie (pin 1 i 2)...
witam, zdaje mi się ze w języku c do konwersji unsigned integer służy funkcja utoa analogicznie do int8_t uint8_t , sprawdź sobie.
Witam. Wczoraj zbudowałem sobie płytkę z układem Atmega8, wyświetlaczem 2x16 na HD44780 i paroma innymi bajerami. Zasilam to wszystko z zasilacza ATX. I problem jest taki - przerobiłem bibliotekę stąd: http://radzio.dxp.pl/hd44780/hd44780_avr... przerobiłem ją na używanie PORTD oraz pinów 0-2 z PORTC. I wczoraj wieczorem wszystko ładnie...
Wykonałem dokładnie to samo według poleceń z podanej stronki i jak najbardziej działa. Zamieszczam pliki. Pozdrawiam. Dokładnie jak sobie odpowiedziałeś: na początku w HD44780.h zmieniasz porty do jakich masz podłączony wyświetlacz.
Holy, pracuje na 16MHz. Wszystko dziala, kiedy z funkcji LCD_Send() wywale dwa wywolania funkcji LCD_Busy() i zmienie "nop'y" na delay(1) [opoznienie o jedna milisekunde].
trochę zaangażowania. Bez problemu znajdziesz setki schematów w sieci. http://www.embedds.com/wp-content/upload...
Witam. Kupię wyświetlacz LCD 2x20 znaków podświetlany, kompatybilny z HD44780 oraz atmega8 i ds18b20 (cyfrowy termometr). Wszystko najlepiej by było jak bym mógł dostać od jednej osoby. Pozdrawiam
[url=http://radzio.dxp.pl/hd44780/hd4478...
Oczywiście można. Ale nie używałem LCD w takiej aplikacji gdzie było to wymagane.
Czy w twoim oryginalnym programie po LCD_CLEAR, miałeś czysty ekran? btw. ponieważ używasz biblioteki z netu, rozważ zmianę na tą IMHO dużo lepszą: http://radzio.dxp.pl/hd44780/
Masz Reset połączony z Vcc, w efekcie nie będzie się dało zaprogramować procka. Teraz chyba powinno się wszystko zgadzać? Chcę użyć potencjometru 4,7k, czy będzie odpowiedni?
Spróbuj uruchomić ten wyświetlacz to nić trudnego szczególnie gdy podałem ci bibliotekę do niego. Fakt w C a ty chcesz bascoma ale da się to łatwo przerobić. Choć łatwiej ci będzie odłożyć ten wyświetlacz na później a zacząć od typowego na HD44780
Aha to dobrze. A masz może wyświetlacz LCD? Najprostszy z sterownikiem HD44780.
Witam mam takie pytanie czy ten wyświetlacz będzie dobry http://allegro.pl/wyswietlacz-lcd-podswi...
Witam ATMega8 za 4-5zł, ale są jeszcze mniejsze i tańsze, zależy ile wyprowadzeń potrzeba.
Jest to możliwe
Co do lcd to w sumie możesz traktowac jako podstawę - wystarczy komenda Lcd " i tu tekst" - tylko dla wyświetlaczy hd44780. Dodano: Hehe też taki sterowałem. Nawet chciałem wcisnąc w obudowę kompa, ale.... ...znaczy o lcd mówie.
Nie, na armie miałem to zrobione na timerach tutaj skorzystałem z gotowego rozwiązania, ale funkcje działają chyba dobrze bo hd44780 wyświetla poprawnie.
No i pokaż schemat podłączenia.
Może i dziwne, ale pozwala.
Wyświetlacz na HD44780, wyświetlacze 7 segmentowe, ULN2803, kilkadziesiąt BC556 i BC546, dużo by tego było, ale musisz wiedzieć co chcesz konkretnie zrobić.
..myślę że (ciach) przyda się informacja że windows`owy kalkulator jest bardzo pomocny :) Możesz zobaczyć jak poustawiane są bity w bajcie :) Przeliczać pomiędzy systemami zapisu..Wszystko za darmo i pod ręką. http://obrazki.elektroda.pl/8293742100_1... http://obrazki.elektroda.pl/5831370300_1... http://obrazki.elektroda.pl/4965214200_1...
Na pewno nie ma FT7032, tylko ST7032 i dokumentacja jest prosta i czytelna. Przed monitor i kodzisz w C. A w dodatku: Instruction compatible to ST7066U and KS0066U and HD44780
Witam! Na wstępie dodam, że jestem baaardzo początkującym elektronikiem. Z mikroprocesorami nie miałem jak dotąd nic wspólnego, dodatkowo nie znam żadnego języka przydatnego elektronikowi (C, BASCOM, etc.). Dlatego też proszę o wyrozumiałość i nie zasypywanie mnie trudnymi terminami ;) Przejdźmy do rzeczy. W końcu nastała potrzeba "skombinowania" odpowiedniego...
Wiele środków nie mam, więc nie będę kupował jakiegoś LCD za 45zł. HD44780 już obsługiwałem.
Siemka, mniej więcej już rozumiem, jednak przydały by się ćwiczenia praktyczne. Czy są gdzieś jakieś artykuły z wykorzystaniem procesora, najlepiej ATmega8 lub wyswietlacza HD44780? Np. miganie diodą LED co 5 sekund? I jeszcze mam pytanie, zanim kupię wyswietlacz i procek, mogę w AVR Studio 4 debuggować pracę procka (ATmega8) a czy można jakoś debugować...
Specjalnie dla Samuraja link do dobrej biblioteki dla LCD ze sterownikiem HD44780: [url=http://www.jump.to/fleury]http://ww...
Witam, zbudowałem następujący układ: http://obrazki.elektroda.pl/1600386800_1... ( Potencjometry mają po 100kilo ohmów. ) Układ jest generatorem z regulowaną częstotliwością i długością pulsu, regulowaną za pomocą potencjometrów. Niestety mam dziwny problem z jego obsługą. Kiedy programowo WYŁĄCZĘ wyświetlacz wszystko działa elegancko....
Witam. przeglądałem już różne posty w tym temacie ale ciężko znaleźć jakieś rozwiązanie sprawdzone i działające. Chodzi o to, że jeszcze nie mam zbudowanej płytki ale jest juz schemat ideowy.Z doświadczenia wiem, że jak mam układ z przekaźnikiem to często wyświetlacz się "wykrzacza" lub pojawiają się dziwne znaki (chińske) albo literki dodatkowe. Jest...
Dodaję w załączniku pliki: hd44780.c hd44780.h makefile defines program.c
Wygląda na brak dołączenia odpowiedniego pliku avr/io.h
Bo pewnie używasz delay z argumentem będącym zmienną, podczas gdy funkcje te powinno się wywoływać z argumentami będącymi stałymi.
Witam :) Chciałbym nauczyć się języka C dla Atmega8 Interesowało by mnie na początek wyświetlenie jakiegokolwiek wyrazu na wyświetlaczu HD44780. Od czego powinienem zacząć? Przelecialem sporo stron w Google i dalej nie jestem w stanie nic zrobić, bardzo proszę o pomoc
Piny DB0-DB3 mają wisieć w powietrzu. To są porty I/O i LCD będzie Ci źle sekwencję odczytywało.
Powiem jedno ja podłączałem z tej strony i wszystko okey [url=http://radzio.dxp.pl/hd44780/hd4478...
tak wlasnie bylo. Potencjometr 10k zalatwil sprawe :-) DZIĘKI
Sterowniki tych wyświetlaczy same odświeżają ekran co jakiś tam czas, także nie jest tak różowo. Da się zrobić tak, żeby teoretycznie móc sterować każdym pikselem, ale możliwe, że będzie to trochę migało. Pomysł na forum już był kiedyś.
Sprawdziłem u mnie i się skompilował: 1. Pobranie projektu: [syntax=bash]git clone https://github.com/radhoo/digital_bench_... 2. Wejście do katalogu z kodem i zamiana pod Windowsem nazw plików "aux", które w tym systemie są zastrzeżone przez co kompilator avr-gcc nie może ich wykryć. Pod Linuxem nie trzeba tego robić [syntax=bash]cd...
Google->avr printf float.
Hej. Może to Ci trochę pomoże: http://avr-mcu.dxp.pl/hd44780-assembly-d... http://www.avrbeginners.net/interfacing/...
W przypadku LCD (kompatybilne z HD44780) nie ma musu podłączać do masy.
Z tego co widzę, to może być tak: uC Wyświetlacz Portc.3 - pin 11 (Db4), Portc.2 - pin 12 (Db5), Portc.1 - pin 13 (Db6), Portc.0 - pin 14 (Db7), Portc.4 - pin 6 (E), Portc.5 - pin 4 (RS)... Pin 5 (RW) podepnij na masę. Piny 15 (+) i 16 (-) to podświetlenie, piny 1 (masa) i 2 (+) to zasilanie, pinem 3 regulujesz kontrast (poprzez wpięty potencjometr)......
EEPROM będzie mi potrzebny (kiedy już trochę rozeznam się z c albo asm) np do zapisu stanów np z termometru. To teraz przeczytaj datasheeta tego mikrokontrolera i dowiesz się, że ma on EEPROM wewnętrzny. Po co ci więc dodatowy - zewnętrzny? zaoszczędzić sobie mogę bo mam na składzie Atmega8 16 pu, wyświetlacz hd44780 z żółtym podświetleniem, EEPROM...
atmega8 hd44780 wyświetlacz atmega8 hd44780 bascom atmega8 hd44780
huawei e3272 aplikacja połączenie ogranicznika przepięć państwowa inspekcja
bosch spv69t00eu flatron w2253
Radio lampowe Philips gra cicho - przyczyny i diagnostyka Valtra 6850: Brak kontrolki świec żarowych i wyświetlacza licznika