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 10 kwi 2025, o 20:42


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
    Autor Wiadomość
    PostNapisane: 21 wrz 2021, o 19:49 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2021
    Posty: 93
    Pomógł: 0

    Hejka, mam pewnie pytanie. Otóż co jakiś czas zdarza mi się w kodzie popełnić "czeski" błąd przy operacji &=~ i wstawi mi się podwójna tylda. Kompilator nic nie krzyczy, a program wtedy naprawdę się dziwnie zachowuje, przez co długo dochodzę co się właściwie dzieje. I stąd pytanie z ciekawości, jak rozumieć operacje np PORTD &=~~(1<<6)? To równoważne bedzie z zapisem &=?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2021, o 20:32 
    Offline
    Użytkownik

    Dołączył(a): 09 lip 2019
    Posty: 116
    Pomógł: 11

    krawi92 napisał(a):
    [...]
    jak rozumieć operacje np PORTD &=~~(1<<6)?
    To równoważne bedzie z zapisem &=?

    Jeśli dobrze zrozumiałem pytanie - to generalnie tak.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Zapis taki jak wyżej będzie równoważny
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

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

    idąc po kolei
    czyli po kolei
    (1 << 6) => 0b01000000
    ~(1 << 6) => 0b10111111
    ~(~(1 << 6)) => 0b01000000
    finalnie
    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 wrz 2021, o 21:47 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2021
    Posty: 93
    Pomógł: 0

    Zastanawialo mnie to, poniewaz wczoraj w jednym z makr wkradlo mi sie cos takiego, 4 piny sterowaly 2 silnikami, pod jeden z nich podlaczylem klawisz, ktory dzialal jak chcial,a wszystko bylo na 1 porcie. Nie moglem dojsc do ładu, czy to wina programu czy sprzętu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2021, o 21:56 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 06 mar 2015
    Posty: 323
    Lokalizacja: Rybnik
    Pomógł: 23

    A dlaczego kompilator ma krzyczeć? Przecież nic nie zrobiłeś źle. Zaneguj coś co jest zanegowane, czyli raz zanegowana jedynka da zero a zaneguj ją drugi raz to co otrzymasz... z powrotem jedynkę.

    _________________
    http://www.avrboss.pl



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 wrz 2021, o 23:08 
    Offline
    Moderator
    Avatar użytkownika

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

    krawi92 napisał(a):
    i wstawi mi się podwójna tylda.


    eeeh panie ... czytaj częściej mojego bloga, bo już od bardzo dawna podałem MEGA prosty sposób żeby się nigdy podwójna tylda nie pojawiała - bo to problem każdego początkującego ;) zresztą zobacz sam

    http://mirekk36.blogspot.com/2012/03/ty ... lemow.html

    a dokładnie to na forum jest opisane ;) post4081.html#p4081

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

    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