Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Atmega32][C] HD44780 i włączona optymalizacja kodu

Andrzej.Woo 16 Wrz 2011 10:07 1374 4
  • #1 16 Wrz 2011 10:07
    Andrzej.Woo
    Poziom 9  

    Korzystam z zestawu EvB 4.3v4 w którym jest LCD HD44780 + AVR Studio 5.0. Próbuję użyć kodów ze stron:
    http://jump.to/fleury
    oraz
    http://tAvrLib.wasilczyk.pl
    ...które wydają się dobrze opisane i napisane ale...

    niestety pojawia się problem z ich obsługą kiedy włączona jest jakakolwiek optymalizacja - nic się nie wyświetla. wiem, że wielu z was miało podobne problemy. Może ktoś podzieli się swoimi spostrzeżeniami?

    pozdrawiam...
    Andrzej

    0 4
  • Pomocny post
    #2 16 Wrz 2011 12:15
    INTOUCH
    Poziom 30  

    Temat wielokrotnie przerabiany na tym forum.
    Nie wiem czy warto pisać.
    Spróbuj z korzystać z gotowej biblioteki z poniższej strony.
    http://radzio.dxp.pl/
    Jedyne zmiany jakie musisz wprowadzić definicje pinów oraz zegara taktującego.
    Włącz optymalizację -Os.

    Sprawdź czy odpowiednio jest ustawiony kontrast na wyświetlaczu.
    Do ustawienia kontrastu na twojej płytce jest potencjometr.

    0
  • #3 16 Wrz 2011 13:07
    Andrzej.Woo
    Poziom 9  

    INTOUCH napisał:
    Temat wielokrotnie przerabiany na tym forum.
    Nie wiem czy warto pisać.

    Imho warto, bo nikt nigdy nie napisał dlaczego taki problem występuje.

    INTOUCH napisał:
    Spróbuj z korzystać z gotowej biblioteki z poniższej strony.
    http://radzio.dxp.pl/

    Dzięki. Sprawdziłem i działa :D ale żeby nie było tak pięknie to działa mi tylko biblioteka ze sprawdzaniem flagi zajętości RW.

    INTOUCH napisał:

    Sprawdź czy odpowiednio jest ustawiony kontrast na wyświetlaczu.
    Do ustawienia kontrastu na twojej płytce jest potencjometr.

    Gdybym miał źle ustawiony kontrast, to nie działałoby w ogóle, a nie tylko przy wyłączonej optymalizacji :P

    Z powyższego wynika fakt, że problem dotyczy "ręcznych" opóźnień które nie powinny być ustawione "na oko" i bez korzystania z flagi zajętości RW się nie da.

    Jeszcze raz dzięki za pomoc!

    P.S. W tej bibliotece jest błędnie dołączany plik źródeł. Plik nagłówkowy *.h powinien "incudować" plik *.c, a nie odwrotnie, ale to akurat najmniejszy szczegół.

    0
  • #4 16 Wrz 2011 14:23
    INTOUCH
    Poziom 30  

    Tematów z HD44780 na tym forum jest mnóstwo.
    Nie wiem jak bardzo jesteś zaawansowany w programowaniu mikro kontrolerów, ale biblioteka, z której wcześniej skorzystałeś jest napisana w dość skomplikowany sposób. Grzebiąc w niej łatwo coś popsuć.
    Polecam książkę kolegi z forum z poniższej strony. Bardzo ułatwiła mi życie.
    http://atnel.pl/

    0
  • #5 17 Wrz 2011 07:09
    Andrzej.Woo
    Poziom 9  

    Z AVR zaczynam. Z programowania (również w C) żyję od 20 lat.

    Co do HD44780, to jest pełno przeróżnych materiałów, ale... jak to w sieci bywa jest też całe mnóstwo niedoróbek stąd moje pytanie po intensywnym przekopaniu sieci. Również jak dotąd nie znalazłem wyjaśnienia (tylko przypuszczenie) co jest powodem tego, że niby dobrze napisane biblioteki nie działają poprawnie zwłaszcza, że od ich publikacji (co mozna odczytać z nagłówków) minęło już parę ładnych lat.

    Jeszcze raz dzięki forumowiczom za pomoc!
    Andrzej

    0