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 18 kwi 2025, o 09:42


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 
    Autor Wiadomość
    PostNapisane: 5 paź 2014, o 17:02 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 27 gru 2011
    Posty: 186
    Lokalizacja: Dublin
    Pomógł: 8

    Witam
    Walczę z maskowaniem bitów jak w temacie.
    Mam układ PCA9551 jest to bardzo ciekawy migacz led na szynę i2C
    http://www.nxp.com/documents/data_sheet/PCA9551.pdf
    W opisie rejestrów widnieją poszczególne stany dla ledów.
    Obrazek
    Narysowałem tabelę dla lepszej widoczności

    Obrazek
    Stan spoczynku to 01010101 LEdy od 0 do 3 wyłączone
    Utworzyłem stałe zawierające maski żeby ułatwić sobie zadanie.
    Składnia: [ Pobierz ] [ Ukryj ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Niestety utknąłem na masce dla PWM0. poprzednie maski dla LED0_0N, LED0_OFF są proste i działają bez problemu.
    W masce dla LED0_PWM0 muszę wyzerować bit 0 i ustawić bit 1 niby proste ale utknąłem.

    cały kod:
    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.

    Pozdrawiam
    Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 5 paź 2014, o 18:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 27 gru 2011
    Posty: 186
    Lokalizacja: Dublin
    Pomógł: 8

    Dobra już sobie poradziłem żeby uzyskać zamierzony efekt maskowania dla PWM0 czyli 01010110
    Najpierw robię maskowanie tak jak dla włączenia led0 czyli const led0_on =&B11111100 i dopiero w tedy maskuje ponownie
    const led0_PWM0 =&B00000010
    Podobne kroki wykonuje aby wyłączyć led0 z PWM0
    Składnia: [ Pobierz ] [ Ukryj ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    cały kod:
    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.


    PS. Jeśli macie jakieś lepsze lub alternatywne rozwiązanie chętnie przetestuję.
    Pozdrawiam
    Paweł



    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 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