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? 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 18 cze 2025, o 11:04


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
    Autor Wiadomość
     Tytuł: biblioteka LCD
    PostNapisane: 12 maja 2021, o 22:16 
    Offline
    Nowy

    Dołączył(a): 16 mar 2021
    Posty: 2
    Pomógł: 0

    witam, mam problem ze zrozumieniem biblioteki LCD z bluebooka. strona 221, 222 , funkcja do przesyłania połowy i całego bajtu.
    skąd się bierze np funkcja : data_dir_out() do ustawiania pinów portu LCD? i w jaki magiczny sposób odbywa się przesyłanie całego bajtu .
    czy może ktoś mi to wyjaśnić , będę wdzięczny bo nie mogę się posunąć dalej



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 maja 2021, o 22:50 
    Offline
    Moderator
    Avatar użytkownika

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

    To musisz powiązać z notą PDF wyświetlacza i trybe 4 bitowym.

    Jak chcesz przesłać cały BAJT skoro masz do dyspozycji tylko 4 linie danych ? No to proste - po to jest sobie tego typu funkcja, która najpierw prześle ci jedną połówkę bajtu a później drugą, dzięki czemu LCD odbierze łącznie cały bajt

    _________________
    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: 13 maja 2021, o 07:25 
    Offline
    Nowy

    Dołączył(a): 16 mar 2021
    Posty: 2
    Pomógł: 0

    jasne że podział na 2 połówki jest logiczny
    oczywiście pomyslałem o nocie pdf , ale nie znalazłem w żadnej choćby podobnej funkcji(właściwie to ani jednej funkcji)
    ty natomiast piszesz że jest to prosta funkcja o której już wcześniej wspominałeś, tyle że ja nie umiem jej odnaleźć w książce
    po prostu chcę to zrozumieć



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 maja 2021, o 08:08 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Pdf LCD w łapki i patrząc na funkcje 4bit na pewno zrozumiesz. Są tam używane przesunięcia bitowe i maskowanie, żeby w odpowiedniej kolejności wypchnąć nibble (połówki bajtu) do LCD



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 maja 2021, o 09:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 31 mar 2015
    Posty: 310
    Pomógł: 18

    mirkas2 napisał(a):
    skąd się bierze np funkcja : data_dir_out() do ustawiania pinów portu LCD?

    Można lakonicznie odpowiedzieć - TAK. Na stronie 224 jest odpowiedź dlaczego w bibliotece LCD występują dwie podobne funkcje dotyczące kierunku przepływu danych(data_dir_out(), data_dir_in() ). Ciała tych funkcji zawarte są w pliku.c tej biblioteki LCD.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 maja 2021, o 11:22 
    Offline
    Moderator
    Avatar użytkownika

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

    mirkas2 napisał(a):
    ale nie znalazłem w żadnej choćby podobnej funkcji(właściwie to ani jednej funkcji)

    no ale w żadnych notach tego typu nie podadzą ci żadnych funkcji, podadzą tylko parametry czasowe, rejestry i opiszą algorytm - a funkcje się pisze samemu.

    mirkas2 napisał(a):
    ty natomiast piszesz że jest to prosta funkcja o której już wcześniej wspominałeś, tyle że ja nie umiem jej odnaleźć w książce

    No przecież masz

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    i sam komentarz wyjaśnia już co robi ta jakże prosta funkcja a jej ciało może znaleźć w kodach dołączonych do książki przecież.

    _________________
    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 2021, o 19:16 
    Offline
    Nowy

    Dołączył(a): 12 kwi 2021
    Posty: 1
    Pomógł: 0

    Witam, proszę o wyjaśnienie dotyczące biblioteki LCD
    Z jakiego powodu na LCD nie mogę wyświetlić danych/napisu z pamięci EEPROM
    - w pliku mk_lcd44780.h jest ustawione USE_EEPROM 1
    - pliki mk_lcd44780.c i mk_lcd44780.h są oryginalnymi bibliotekami MK_LCD_LIB bez modyfikacji
    - w pliku main.c następujące funkcje:

    #include <avr/io.h>
    #include <avr/pgmspace.h>
    #include <avr/eeprom.h>
    #include <util/delay.h>
    #include "MK_LCD/mk_lcd44780.h"

    const char PROGMEM tab1[] = {"FLASH"};
    char EEMEM tab2[] = {"EEPROM"};

    int main(void)
    {
    lcd_init(); //inicjalizacja LCD
    lcd_LED(1); //podświetlenie włączone
    lcd_cls(); //czyszczenie ekranu dla pewności
    lcd_locate(0,0); //pozycjonowanie kursora - pierwsza linia
    lcd_str_E(tab2); //wyświetlenie napisu z pamięci EEPROM -----> NIE wyświetla się na LCD napis "EEPROM" - dlaczego???
    lcd_locate(1,0); //pozycjonowanie kursora - druga linia
    lcd_str_P(tab1); //wyświetlenie napisu z pamięci FLASH -------> JEST WYŚWIETLONY napis "FLASH"
    }

    Z napisami zdefiniowanymi w pamięci RAM i FLASH nie ma problemu, jedynie napisy z EEPROM nie wyświetlają się.
    W poradniku Mirka "#0584 MK LCD HD44780 - Biblioteka C - Part 02" zauważyłem że też nie wyświetlają się napisy zdefiniowane w EEPROM (czarny prostokącik powinien być literą "ó").
    Jestem początkującym, przerabiam kolejno bluebooka (jestem właśnie na LCD) i do tej pory nie znalazłem wiele o pamięci EEPROM - będzie pewnie dalej.
    Bibliotekę LCD z książki napisałem ze średnim skutkiem (90% jarzę) ale będę ją jeszcze mordował tak aby wszystko zrozumieć.
    Pewnie jest jakieś proste wytłumaczenie, ale na tą chwilę nie wiem jakie!?
    Płytka ATB 1.05a
    Mam nadzieję że już ktoś o tym nie pisał - nie znalazłem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 maja 2021, o 19:36 
    Offline
    Moderator
    Avatar użytkownika

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

    RobinsonRobert napisał(a):
    Mam nadzieję że już ktoś o tym nie pisał

    Pisał pisał i to wielokrotnie ;)

    Panie kochany, nusisz w Eclipse zaznaczyć sobie, żeby przy wgrywaniu wsadu do FLASH wgrywało też wsad do EEPROM, bo w tym przykładzie z książki jest to sztucznie przygotowany napis jako stała właśnie w eepromie.

    masz tak:

    Obrazek

    a musiałbyś na potrzebę tego przykładu ustawić sobie we właściwościach projektu tak:

    Obrazek

    i pamiętaj proszę, na drugi raz zakładaj NOWY WĄTEK - a nie zadajesz swoje pytanie, kompletnie nie związane z tematem w przypadkowym wątku na forum ok?

    _________________
    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  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 

    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