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 20 maja 2025, o 07:59


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 
    Autor Wiadomość
    PostNapisane: 24 sty 2023, o 21:15 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 04 paź 2013
    Posty: 497
    Lokalizacja: Siedlce
    Pomógł: 9

    A więc robię sobie taki skromne oświetlenie do kuchni:
    Obrazek

    I przerabiałem trochę kod z tego poradnika :
    https://youtu.be/_eNNJCBu3Vw?list=PLkcl ... a4IEikflr6

    I mam taki problem otóż mam tam tzw. efekt intro czyli tęcza która przechodzi przez cały pasek mieniąc się całą paletą barw myślę że znawcy poradników mirka wiedzą o czym mówię ;) Wymyśliłem sobie że po 4 naciśnięciu przycisku enkodera ta tęcza wyświetla się w pętli nieskończonej ale chciałbym aby jak tylko wcisnę przycisk enkodera to od razu wychodzi mi z tej pętli i tutaj mam problem bo muszę cały czas trzymać przycisk aż dojdę do "schowania" się tego paska czyli rozpoczęcia wyświetlania się od nowa a ja chcę aby od razu była reakcja na przycisk i wyjście z wyświetlania tej tęczy.

    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.

    _________________
    Ucz się ucz ,bo po to tutaj jesteś...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 sty 2023, o 12:09 
    Offline
    Moderator
    Avatar użytkownika

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

    bo od początku źle do tego podchodzisz. Niby używasz timera programowego żeby pisać program w sposób nieblokujący a jednocześnie w tym timerze dajesz jakąś funkcję, która trwa bardzo długo i paskudnie blokuje program - czyli NICI z programu nieblokującego ... to działa w taki sposób, że nawet ten timer programowy mógłbyś pominąć i nic by się nie zmieniło w obecnym działaniu twojego programu. To wywołanie twojej długotrwającej funkcji to jest tak jakbyś w tym timerze wstawił jakiegoś paskudnego delaya 1000ms

    CAŁKOWICIE musisz zmienić myślenie - i to co masz w tej funkcji i pewnie w niej jakąś kocią pętlę i delaje - to wywalić pętlę i to co w niej się dzieje robić właśnie w tym timerze - i bez żadnych delajów ... bo zamiast nich to timer będzie robił ci te delaje

    _________________
    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: 2 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 5 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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO