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 11 kwi 2025, o 00:49


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 6 gru 2013, o 19:27 
    Offline
    Użytkownik

    Dołączył(a): 04 lis 2012
    Posty: 108
    Pomógł: 0

    Witam.
    Napisałem program w którym przyciskami chcę zmieniać wartość zmiennej A o +5 lub -5 w zależności od kliknięcia przycisku. Problem polega na tym ze podprogram po naciśnięciu s3 zapala diody w podprogramie a=55 a przycisk s2 nic nie chce robić. Chcę aby program po wejściu do ustawień umożliwił zmianę zmiennej A od 20 do 55 i zapalił odpowiednie diody i zapisał je do pamięci eeprom a później można było ją odczytać w pętli do loop.
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Kody umieszczamy w znacznikach SYNTAX -- Poprawiłem --- SunRiver



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 gru 2013, o 21:32 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 771
    Pomógł: 40

    a bez tych wszystkich pętli nie da sie tego zrobić? Strasznie skomplikowałeś ten program.Same petle i gosub. Poczytaj o Case i Debounce w twoim przypadku wystarczy to do obsługi przycisków.Teraz to nawet chyba procesor nie może sie z tym połapać. W przerwaniu debounce będziesz miał obsługę przycisków ,a w programie głównym będziesz sobie odczytywał.
    Składnia: [ Pobierz ] [ Ukryj ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    przyklad dla jednego przycisku. Napisz to jeszcze raz ,poczytaj w helpie i dopytaj sie,bo teraz to nie mam pojęcia co tam jest.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 gru 2013, o 09:02 
    Offline
    Użytkownik

    Dołączył(a): 29 lis 2012
    Posty: 1074
    Lokalizacja: Sochaczew
    Pomógł: 21

    Rzeczywiście mocno zakręciłeś a można było łatwiej. Do tego taka dobra koleżeńska rada, naucz się konfigurować porty w jednej linii. I tak zamiast pisać:

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


    Konfiguracja portu D mogła wyglądać tak:

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


    Wiem że na początku może wydawać się niezrozumiałe, też wolałem pisać jak Ty, ale to kwestia zrozumienia i przyzwyczajenia się.
    Piszesz od najstarszego bitu portu stawiając 1 gdy pin jest wyjściem a 0 gdy wejściem.

    Kod:
    Config portD = &b 0 0 1 1 1 1 1 1
                    | | | | | | | | |
                    | | | | | | | | '-PortD.0
                    | | | | | | | '---PortD.1
                    | | | | | | '-----PortD.2
                    | | | | | '-------PortD.3
                    | | | | '---------PortD.4
                    | | | '-----------PortD.5
                    | | '-------------PortD.6
                    | '---------------PortD.7
                    |
                    '---Informacja że konfiguracja
                         odbędzie się za pomocą liczby binarnej



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 gru 2013, o 16:50 
    Offline
    Użytkownik

    Dołączył(a): 04 lis 2012
    Posty: 108
    Pomógł: 0

    Już sobie poradziłem wystarczyło po if dać wait 1 i wszystko działa. Wiem program jest zamotany. Kolego matrix też wolę tak konfigurować porty ale w tym kodzie, nawet nie wiem dlaczego ale zrobiłem tak. grzeniu 73 poczytam o tym.



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

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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


    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