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 24 maja 2025, o 03:29


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
    Autor Wiadomość
     Tytuł: RC5 Bluebook
    PostNapisane: 1 gru 2016, o 16:32 
    Offline
    Nowy

    Dołączył(a): 18 sie 2015
    Posty: 4
    Pomógł: 0

    Witam.

    Przerabiam właśnie rozdział dotyczący podczerwieni w Bluebooku. Postanowiłem dość "dogłębnie" przeanalizować kody dla lepszego zrozumienia co po kolei się w nim dzieje. Nie jest źle :) bo w zasadzie większość zdołałem ogarnąć. Intryguje mnie tylko jedna rzecz.
    Otóż w obsłudze przerwania ICP obliczana jest szerokość impulsu:
    Składnia: [ Pobierz ] [ Ukryj ]
      Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Zmienne PulseWidth i LastCapture są typu int16 bez znaku.

    Timer1 w trybie ICP, z tego co zrozumiałem z noty, pracuje na zasadzie zliczania w górę od zera do 65536. W chwili wystąpienia zbocza na wejściu ICP do rejestru ICR1 wpisywana jest aktualna wartość z TCNT1.
    Moje pytanie dotyczy sytuacji kiedy liczymy szerokość impulsu i np. zmienna Last Capture z poprzedniego przerwania wyniosła 65000, Timer1 zliczyl 889us (z założeniem zegara 8 MHz) i nastąpiło kolejne wykrycie zbocza. W związku z tym do ICR1 zostanie wpisana wartość 353 (Timer1 doliczył z 65000 do końca, wyzerował się i liczył dalej). Jaki będzie zatem wynik wyrażenia ICR1 - LastCapture (353 -65000) ? Nie będzie to liczba ujemna bo typ zmiennej jest unsigned. Jak wpływa to na przebieg kodu ? Czy w tej sytuacji ramka zostanie odrzucona i procedura się powtórzy ale z kolejnymi już prawidłowymi wartościami PulseWidth i LastCapture ?

    Dziękuję i pozdrawiam.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 1 gru 2016, o 16:45 
    Offline
    Moderator
    Avatar użytkownika

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

    A czy widzisz gdzieś w kodzie jakieś takieś odrzucanie ramki ??? ;)

    marian_pl napisał(a):
    Jaki będzie zatem wynik wyrażenia ICR1 - LastCapture (353 -65000)

    No a jak myślisz ? ;)

    ------------------------ [ Dodano po: 5 minutach ]

    Wystarczy wziąć kalkulator windows w trybie programisty i zrobić to odejmowanie ;)

    353 - 65000
    ObrazekObrazek

    to się równa - binarnie - zobacz w czerwonej ramce ;)
    Obrazek

    czyli dziesiętnie ta wartość binarna to !!! taa daaa =
    Obrazek

    teraz jaśniej ? ;)

    _________________
    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  
    PostNapisane: 1 gru 2016, o 17:12 
    Offline
    Nowy

    Dołączył(a): 18 sie 2015
    Posty: 4
    Pomógł: 0

    Jasne jak słońce :) niepotrzebnie namieszałem sobie w głowie pisząc na szybko programiki z funkcjami printf() do wyświetlania liczb, pewnie pomyliłem tam zakresy liczb. Dziękuję za odpowiedź.



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

    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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO