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 3 maja 2025, o 12:46


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
    Autor Wiadomość
    PostNapisane: 21 kwi 2018, o 10:03 
    Offline
    Użytkownik

    Dołączył(a): 06 wrz 2017
    Posty: 94
    Pomógł: 0

    Witam.Mam małą zagwozdkę bo nie wiem jak przerobić kod by działał na bitach 1, 3, 7, 15, 31, 63, 127, 255 po 255 zerowanie i do nowa.Tu w przykładzie bity przesuwam bit po bicie 1,2,3,4,5,6,itd natomiast nie wiem jak zrobić ten drugi efekt.Mogę prosić o podpowiedz.Pozdrawiam.

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



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 kwi 2018, o 11:35 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 01 lis 2015
    Posty: 1448
    Lokalizacja: okolice Warszawa
    Pomógł: 149

    witam,
    albo przesuwaj w lewo maskę na zmiennej z jedynkami,
    albo zmienna static i :
    przesuwaj w lewo i dodawaj 1 , będzie wypełniało najmłodszy bit.
    albo ( licz * 2 + 1),
    albo.. :) można się posiłkować sposobem maskowania i przesunięć bitowych, opisanych w BB w rozdziale o buforze cyklicznym.

    ------------------------ [ Dodano po: 2 minutach ]

    no i w kodzie

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

    to zero w klamrach niema sensu. ;) wkradł się chochlik.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 kwi 2018, o 18:09 
    Offline
    Użytkownik

    Dołączył(a): 06 wrz 2017
    Posty: 94
    Pomógł: 0

    Zastosuje licz*2+1.ŁATWIEJ.
    A jak przesuwać w lewo maske na zmiennej z jedynkami.Możesz pokazać.Na pewno z or.co?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 kwi 2018, o 21:47 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 01 lis 2015
    Posty: 1448
    Lokalizacja: okolice Warszawa
    Pomógł: 149

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

    ale, ponieważ używasz wszystkie piny portu, to tak chyba będzie prościej.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 kwi 2018, o 09:59 
    Offline
    Użytkownik

    Dołączył(a): 06 wrz 2017
    Posty: 94
    Pomógł: 0

    Działa tak bez +1 nie wiem dla czego.

    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.


    Twój sposób jest zdecydowanie lepszy.Zrobiłem tak ;

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

    A to ~(uint8_t) (255 >> licz) to chyba Mirek w którymś poradniku wspominał.Rzutowanie.Gdzie poczytam o tym?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 kwi 2018, o 10:30 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 paź 2014
    Posty: 1033
    Lokalizacja: Trójmiasto
    Pomógł: 190

    W BB rozdział "Operatory rzutowania"

    ------------------------ [ Dodano po: 1 minucie ]

    A także tu http://atnel.pl/domyslna-promocja-do-typu-int.html


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 kwi 2018, o 10:36 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 01 lis 2015
    Posty: 1448
    Lokalizacja: okolice Warszawa
    Pomógł: 149

    wrctomi napisał(a):
    Działa tak bez +1 nie wiem dla czego.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    wrctomi napisał(a):
    A to ~(uint8_t) (255 >> licz)

    wpisałem tak, ponieważ nie zauważyłem w Twoim kodzie, jakiego typu jest powołana zmienna 'licz'.
    a na temat domyślnych promocji do int'a poczytasz tu:
    _PROMOCJA_
    o... kolega już odpisał. ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 kwi 2018, o 14:28 
    Offline
    Użytkownik

    Dołączył(a): 06 wrz 2017
    Posty: 94
    Pomógł: 0

    Dziękuje Wam za wyjaśnienie.Pozdrawiam.



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