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 19 maja 2025, o 19:31


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 23 lut 2020, o 14:10 
    Offline
    Użytkownik

    Dołączył(a): 06 sie 2019
    Posty: 47
    Pomógł: 0

    Witam potrafiłby mi ktoś wytłumaczyć dlaczego podkreślone polecenie, które ma wartość 0x00000010 w pliku "stm32f4xx.h" nie odpowiada wartości bitu w reference manualu uC (wg dokumentu jest to 4 bit rejestru także myśle że wart powinna wynosić 0x00000004). Jaka jest zależność między tymi dwiema wartościami?
    ObrazekObrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 14:39 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Jak nie odpowiada, skoro odpowiada ?
    4 bit zapalony to: 0x00000010, tak jak jest w opisie.

    Bity numeruje się od 0, Dla uproszczenia liczba 8 bit:

    7 6 5 4 3 2 1 0 <- nr. bitu
    0 0 0 1 0 0 0 0 = 0x10

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 15:50 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 paź 2011
    Posty: 716
    Lokalizacja: Zielona Góra
    Pomógł: 75

    Ja tylko dodam że przedrostek 0x to zapis liczby szesnastkowej (hex) nie binarnej i nie dziesiętnej, binarna była by poprzedzona przedrostkiem 0b, dziesiętna nie ma żadnego przedrostka - stąd może ta niejasność.

    _________________
    pozdrawiam
    phill2k



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 16:34 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Tyle, że liczby od 0 do 9 zapisane szesnastkowo wyglądają tak jak liczby zapisane w postci dziesiętnej. Tu ciężko jest nie zrozumieć.

    Problem zapewne pojawił się w tym, że przedstawiane makra zostały źle zinterpretowane.
    Podpierając się powyższym przykładem z pierwszego postu jest tak:

    RCC_AHB1ENR_GPIOEEN_Pos ma wartość 0x00000004
    więc zapis
    0x1U << RCC_AHB1ENR_GPIOEEN_Pos
    da w wyniku liczbę, którą widać w komentarzu, czyli:
    0x00000010
    i to ta liczba jest maską dla operacji bitowych na 4 bicie wspomnianego rejestru i reprezentowana jest przez:
    RCC_AHB1ENR_GPIOEEN

    _________________
    Pozdrawiam,
    sq8mvy, 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: 4 ] 

    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