Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 9 kwi 2025, o 12:12


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 20 ] 
    Autor Wiadomość
    PostNapisane: 22 maja 2020, o 19:32 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Dobry wieczór,
    Zająłem się realizacją projektu wyświetlacza LCD w oparciu o bibliotekę opisaną w książce Pana Mirosława Kardasia "Bluebook". Bo zbudowaniu całego układu oraz "napisaniu" biblioteki napotkałem problemy z którymi nie mogę dać sobie rady. Początkowe problemy wynikały z niedokładnego zlutowania układu i z tym poradziłem sobie sam, jednak nadal na wyświetlaczu nie mogę wyświetlać tekstu. Sprawa wygląda następująco:

    Wyświetlacz którego używam: https://botland.com.pl/pl/wyswietlacze- ... elony.html

    Mikrokontroler: AtMega32A PU DIP

    Podłączenie pinów
    RS = A6
    RW = GND
    E = A5
    D4 = A4
    D5=A3
    D6=A1
    D7=A0

    1. Mogę inicjować wyświetlacz, jest to jedyna komenda na którą reaguje LCD (tzn, mogę też tego nie robić i zobaczę efekty w postaci niezałączonego wyświetlacza). Po zainicjowaniu całość prezentuje się następująco:
    Obrazek
    Dodam jeszcze, że po samym zainicjowaniu wyświetlacza na porcie D4 utrzymuje się stan wysoki (oraz na portach zasilania wyświetlacza i podświetlenia).

    2. Jeżeli wpisze komendę która ma za zadanie wyświetlić tekst na ekranie, to nic się nie dzieje. Na portach D4, RS utrzymuje się stan wysoki (oraz na portach zasilania i podświetlenia).

    3. Jedyny "tekstowy" efekt jaki udało mi się otrzymać to po pocieraniu spodu wyświetlacza ukazują się takie znaki:
    Obrazek

    4. Mam taką jeszcze drobną uwagę, kontrolując czy wszystko jest w porządku z układem dodałem do niego diodę podpiętą pod port PD6 mikrokontrolera. Po wgraniu kodu który ma załączyć ją na 1s a następnie na 1s zgasić dioda rzeczywiście na to reaguje, ale w odwrotnej kolejności, to znaczy na początek przez 1s jest zgaszona a dopiero później na 1s się zapala. Kod programu migającego diodami:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    5. Mogę regulować kontrast.
    6. Kod programu obsługującego wyświetlacz poprzedzam komendą #define F_CPU 1000000UL aby ustawić taktowanie mikroprocesora.
    7. Taki sam efekt uzyskuję korzystając z różnych bibliotek udostępnionych w internecie (np. biblioteka Pana Radzio).

    EDIT: 7. Biblioteka jest zmodyfikowaną (to znaczy z portami zdefiniowanymi na potrzeby mojej konstrukcji) biblioteką z erraty do wydania dostępnej na stronie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 20:33 
    Offline
    Użytkownik

    Dołączył(a): 05 sty 2015
    Posty: 393
    Lokalizacja: Mielec
    Pomógł: 14

    Jakie IDE używasz? Bo jak eklipse to się nie definiuje w kodzie taktowania a w propertisach.

    JTAG wyłączony?

    Pzdrawiam



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 20:42 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Eclipse Mars, taktowanie także ustawiam w zakładce Project->properties->AVR->target hardware.
    Czy w przypadku wyłączenia JTAGA chodzi o linijki:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    bo jeśli tak, to mam wyłączony.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 20:52 
    Offline
    Użytkownik

    Dołączył(a): 11 sty 2015
    Posty: 166
    Pomógł: 24

    Na pewno piny do LCD masz podłączone zgodnie z tym co masz zdefiniowane w bibliotece?
    Siemson22 napisał(a):
    4. Mam taką jeszcze drobną uwagę, kontrolując czy wszystko jest w porządku z układem dodałem do niego diodę podpiętą pod port PD6 mikrokontrolera. Po wgraniu kodu który ma załączyć ją na 1s a następnie na 1s zgasić dioda rzeczywiście na to reaguje, ale w odwrotnej kolejności, to znaczy na początek przez 1s jest zgaszona a dopiero później na 1s się zapala. Kod programu migającego diodami:
    A jak podłączyłeś tą diodę?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 20:58 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    Siemson22 napisał(a):
    Eclipse Mars, taktowanie także ustawiam w zakładce Project->properties->AVR->target hardware.
    Czy w przypadku wyłączenia JTAGA chodzi o linijki:

    A może ustaw sobie to raz a spokojnie w Fusebitach zamiast w kodzie programu.

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 21:08 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Jeżeli chodzi o sposób podłączenia diody, to podłączyłem ją anodą przez rezystor do mikrokontrolera. Fusebity poprawiłem i teraz są ustawione raz w opcjach. Podłączenie pinów się zgadza, kilka razy już sprawdzałem ale i tak mogę zrobić to raz jeszcze.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 21:27 
    Offline
    Użytkownik

    Dołączył(a): 11 sty 2015
    Posty: 166
    Pomógł: 24

    Siemson22 napisał(a):
    Jeżeli chodzi o sposób podłączenia diody, to podłączyłem ją anodą przez rezystor do mikrokontrolera. Fusebity poprawiłem i teraz są ustawione raz w opcjach. Podłączenie pinów się zgadza, kilka razy już sprawdzałem ale i tak mogę zrobić to raz jeszcze.

    Czyli katodą do masy. No to działa tak jak masz zdefiniowane w makrach.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 22:16 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Piny sprawdziłem, wszystkie są odpowiednio podłączone, te z nich które miały podejrzany lut zlutowałem na nowo. Na wyświetlaczu dalej nie mogę wyświetlić tekstu. Pamiętam, że gdy lutowałem cały układ pierwszy raz, to przez przypadek kropla spoiwa kapnęła mi na spód wyświetlacza. Nie upadła na żaden z elementów, ale jedynie na ten zielony kawałek mniej więcej na środku na te czerne paski. Kropla ta nie była duża. Poczekałem chwile aż stężeje i po prostu lekkim posunięciem ją usunąłem. Nie ma jednak żadnego śladu po tym, nawet nie widzę gdzie mogła upaść. Czy to może być sprawcą?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 22:26 
    Offline
    Użytkownik

    Dołączył(a): 11 sty 2015
    Posty: 166
    Pomógł: 24

    Mało prawdopodobne. Raczej jednak coś źle robisz.
    Czy biblioteka korzysta z pinu RW?
    Wstaw kod, fragment z konfiguracją biblioteki LCD i to co do niego wysyłasz.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 22:37 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Pin RW ustawiłem na 0.
    Nie wiem czy o to dokładnie chodziło, ale tak wygląda fragment definicji:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    EDIT: to znaczy PIN RW jest zadeklarowany jako USE_RW 0, czyli że nie używam. On sam jest podpięty do GND.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 22:51 
    Offline
    Użytkownik

    Dołączył(a): 11 sty 2015
    Posty: 166
    Pomógł: 24

    Wrzuć jeszcze program główny i zdjęcia jak to masz połączone.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 22:59 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Jeżeli nie masz nic przeciwko to wyślę Ci ten program na PW, cały program napisałem w oparciu o książkę "BLUEBOOK", a tak naprawdę jest to jego kalka i wiem, że Pan Mirosław woli aby nie wrzucać tego kod gdzie popadnie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 maja 2020, o 23:47 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    Piszesz, że coś ci wyświetlacz nie działa ... a powiedz mi czy sprawdziłeś na początek tak dla upewnienia się - jak i czy działa ci z gotową biblioteką z książki? Przecież gdyby ci ruszył ładnie to łatwiej byłoby tobie później szukać gdzie w swoim kodzie popełniłeś jakiś błąd.

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 00:12 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Wydaje mi się, że tak. Oprócz biblioteki którą "przepisałem" z książki, spróbowałem operować na tej umieszczonej na stronie ATNEL jako uaktualnienie (przy określeniu odpowiednich definicji). Może chodzi o te definicje? Nie mam płytki DVD i kilka z wymaganych definicji znalazłem przeszukując internet. Wszystkie te definicje są w jednym z dodanych przeze mnie komentarzy (w bibliotece ze strony Atnel segmenty w których "inne" definicje są potrzebne są ubrane w klamry #if i #endif przez to kompilator nie wymaga ode mnie ich definiowania).



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 00:15 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    Siemson22 napisał(a):
    Nie mam płytki DVD

    Nie próbowałeś dokupić w wydawnictwie Atnel materiałów z DVD ? Przecież jest taka możliwość na wypadek zagubienia, kradzieży czy zniszczenia nośnika. A przecież tam jest sporo ważnych ćwiczeń z książki.

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 00:42 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    Nie próbowałem, teraz najwyraźniej wychodzi mi to bokiem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 01:56 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27369
    Lokalizacja: Szczecin
    Pomógł: 1043

    Po to jest książka i kody źródłowe stworzone do niej. Czytelnik ma wtedy porządny punkt odniesienia do tego co sam próbuje tworzyć na podstawie książki. A w sumie to są najlepsze ćwiczenia - gdy samemu się próbuje napisać bibliotekę od początku.

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 06:21 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2595
    Pomógł: 128

    A masz w ogóle Bluebooka, czy jedziesz na jakichś strzępkach poznajdowanych na www (jak erraty itd)?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 11:23 
    Offline
    Użytkownik

    Dołączył(a): 14 sie 2016
    Posty: 905
    Pomógł: 39

    Albo na kserówce która co jakiś czas gdzieś wypływa.

    _________________
    Moje porady są błędne,nie czytać,zbanować od razu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2020, o 19:37 
    Offline
    Nowy

    Dołączył(a): 20 maja 2020
    Posty: 9
    Pomógł: 0

    W okolicach 01-02-03.06.2020 wracam na stancję, wówczas żeby nie mieć problemów prześlę Państwu zdjęcie mojego egzemplarza



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 20 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO