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 01:19


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
    Autor Wiadomość
    PostNapisane: 9 lut 2018, o 13:49 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    Witajcie i Dzień Dobry
    To mój pierwszy post na tym forum ale jesteście ostatnią deską ratunku- z racji, że nie jestem programistą bazując na dostępnej wiedzy w sieci z mniejszym lub większym sukcesem ogarniam arduino.
    ale do rzeczy: zrobiłem jakiś czas temu kontroler do akwarium oparty na arduino nano i obsługujący: pomiar temperatury, pomiar pH, włączaniem/wyłączaniem wiatraka (stycznik), plus obsługa przez PWM diod Power Led z funkcją zmierzch/świt - wyniki były wyświetlane na LCD 20x4. I wszytko chodzi ale chciałem cały projekcik udoskonalić.
    Wpadł mi w ręce (nie przez przypadek) wyświetlacz graficzny LCD 128x64 na kontrolerze ST7920 i tu zaczęły się schody. Jak poprzedni wyświetlacz nie stanowił problemu (dużo dostępnych przykładów w sieci) tak dla tego wyświetlacza jest kicha, a przykłady zawarte dla biblioteki U8glib.h są mało precyzyjne aby na nich coś więcej oprzeć.
    I tu moje pytania i prośba o pomoc:
    1) czy dostępne są gdzieś zbiory/wykaz/zestawienie funkcji/poleceń/komend które sterują tym wyświetlaczem? Chodzi mi przede wszystkim o obsługę czcionek/fontów (kroje, rozmiary, style), rysowanie tabel, dlaczego tyle przy oprogramowaniu void draw() (czy jest ich aż tyle potrzeba poza setup i loop).
    2) poprzedni LCD (20x4) był obsługiwany przez konwerter I2C czterema przewodami natomiast LCD 128x64 na chwilę obecną podłączyłem bezpośrednio z arduino nano ośmioma przewodami (pomysł znaleziony w sieci). Czy jest możliwe i jakie korzyści/udogodnienia da podłączenie z konwerterem I2C (dostępne w sieci dla większych wyświetlaczy)? i czy to ma w ogóle sens wydawać ok. 5 dych na taki konwerter?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 lut 2018, o 15:02 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 paź 2016
    Posty: 106
    Pomógł: 1

    - jak sie czyta tę stronkę to nie wydaje sie to takie skomplikowane.
    http://www.zonnepanelen.wouterlood.com/ ... -humidity/
    - możliwe , że nie rozumiem twojego pytania.

    Obrazek


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 lut 2018, o 16:22 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    spairo napisał(a):
    - jak sie czyta tę stronkę to nie wydaje sie to takie skomplikowane.
    http://www.zonnepanelen.wouterlood.com/ ... -humidity/
    - możliwe , że nie rozumiem twojego pytania.

    Obrazek


    W skeczu z tego przykładu są podane 4 kroje czcionek:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    a pewnie jest ich więcej i pytanie czy jest jakiś wykaz dostępnych opcji np. kursywa, wyśrodkuj itp.

    co do samego procesu wyświetlania też jest kilka wersji:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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


    więc jest kilka komend które mogą wyświetlać dane - czy to wszystkie, które lepsze i czy jest coś jeszcze?
    jeżeli chodzi o rysowanie linii, ramek też spotkałem się w kilku skeczach z różnymi wariantami (nie mam ich zapisanych więc ich nie podam).
    generalnie chodzi mi o to aby odkryć taki wykaz gdzie będą zawarte prawie wszystkie dostępne komendy dla tego wyświetlacza.
    Z góry przepraszam za swoją dociekliwość ale lubię mieć kilka opcji do wyboru niż klepać jak wszyscy w kółko tylko jedno.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 lut 2018, o 18:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 sty 2014
    Posty: 336
    Lokalizacja: Grodzisk Mazowiecki
    Pomógł: 13

    Cytuj:
    1) czy dostępne są gdzieś zbiory/wykaz/zestawienie funkcji/poleceń/komend które sterują tym wyświetlaczem?

    Według mnie w pliku nazwa_biblioteki.h


    Autor postu otrzymał pochwałę

    _________________
    "Nie programuj w święta - bug się rodzi"



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 lut 2018, o 18:16 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    tomson5 napisał(a):
    Cytuj:
    1) czy dostępne są gdzieś zbiory/wykaz/zestawienie funkcji/poleceń/komend które sterują tym wyświetlaczem?

    Według mnie w pliku nazwa_biblioteki.h


    a jak wyedytować zawartość? programem do arduino czy czym innym ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 lut 2018, o 18:25 
    Offline
    Użytkownik

    Dołączył(a): 12 sty 2015
    Posty: 80
    Lokalizacja: Grudziądz
    Pomógł: 2

    nebari napisał(a):
    a jak wyedytować zawartość? programem do arduino czy czym innym ?


    Najlepiej chyba darmowym Notepad++


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 lut 2018, o 09:35 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    po wczorajszych poszukiwaniach dzisiaj od rana walczę z przejściem z LCD 20x4 na LCD 128x64 i mam pytanie:
    w kodzie na bazie którego robię rekonstrukcję mam tak:

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

    i tu są treści wyświetlane na ekranie głównym a następnie jest:

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

    nie chcę bezmyślnie przerabiać kodu ale poznać mechanizm działania.
    1. Czy faktycznie trzeba najpierw robić operacje w odrębnych składach a następnie wyświetlać je w jakby główny void draw(void)?
    2. jak poradzić sobie z ekranem powitalnym który wyświetlałby mi się przy starcie arduino? poprzednio było to proste ekran 1- czas wyświelania - ekran 2 a teraz ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 lut 2018, o 12:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1168
    Lokalizacja: Kraków
    Pomógł: 93

    Ale to nie do końca tak działa.
    Tworzysz sobie osobne funkcje, np. do wyświetlania tekstu (void drawText(void)), podejrzewam, że podobne są do rysowania innych elementów. A następnie, w funkcji draw() wstawiasz tylko te, których chcesz użyć. Wstaw bibliotekę, której używasz tu na forum, łatwiej będzie cokolwiek podpowiedzieć (folder kompresujesz do .zip i wstawiasz jako załącznik).



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 lut 2018, o 13:42 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    Marhef napisał(a):
    Ale to nie do końca tak działa.
    Tworzysz sobie osobne funkcje, np. do wyświetlania tekstu (void drawText(void)), podejrzewam, że podobne są do rysowania innych elementów. A następnie, w funkcji draw() wstawiasz tylko te, których chcesz użyć. Wstaw bibliotekę, której używasz tu na forum, łatwiej będzie cokolwiek podpowiedzieć (folder kompresujesz do .zip i wstawiasz jako załącznik).


    mam stworzone trzy funkcje draw:
    pierwsza do strony powitalnej:

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

    druga dotyczy zawartości tekstowej:

    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.

    trzecia natomiast jest zarazem stroną główną i zawiera treść z funkcji drawText():
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    całość jest ustawiana w funkcji loop ():
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    i tu jest problem gdyż strony przełączają się/migają zamiast wyświetlić stronę Str_1 a następnie Str_2 i na tej pozostać. Coś robię nie tak ale nie wiem co :-(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 11 lut 2018, o 19:49 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 sty 2014
    Posty: 336
    Lokalizacja: Grodzisk Mazowiecki
    Pomógł: 13

    Stronę startową musisz umieścić w sekcji setup.

    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.


    Autor postu otrzymał pochwałę

    _________________
    "Nie programuj w święta - bug się rodzi"



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 lut 2018, o 17:31 
    Offline
    Nowy

    Dołączył(a): 08 lut 2018
    Posty: 11
    Pomógł: 0

    tomson5 napisał(a):
    Stronę startową musisz umieścić w sekcji setup.

    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.

    co prawda całość zadziała gdy umieścimy to w komendzie u8g.firstPage () i nextPage ()
    ale wielkie dzięki za sugestię - tego nigdzie nie wyczytałem :-(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 lut 2018, o 19:42 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 07 sty 2014
    Posty: 336
    Lokalizacja: Grodzisk Mazowiecki
    Pomógł: 13

    Ponieważ przykład funkcji który podałem nie zawiera inicjacji wyświetlacza. Chodziło mi tylko żeby pokazać o co mi chodzi.

    _________________
    "Nie programuj w święta - bug się rodzi"



    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: 12 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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