-
Data: 2011-02-10 18:56:42
Temat: Re: AVR ATmega, pomiar częstotliwości przebiegu, prośba o sprawdzenie kodu
Od: Zbych <a...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2011-02-10 19:15, Robbo pisze:
> Dziękuję za odpowiedź.
>
>> Po pierwsze jak obydwa przerwania (przechwytywanie i przepełnienie)
>> zostaną zgłoszone jednocześnie, to będziesz miał nieprawidłowy wynik.
>
> Racja.
>
>> Zmienna prev powinno pamiętać nie tylko stan licznika sprzętowego, ale
>> i software'owego.
>
> Tego trochę nie rozumiem. Czy nie masz może kodu, który
> realizuje taki 24-, 32-bitowy licznik? Niestety, ale nie mogę
> nic znaleźć, a szukam już kilka godzin :(
Mniej więcej (raczej mniej niż więcej) widziałbym to tak:
uint32_t period;
uint8_t overflow;
SIGNAL (SIG_INPUT_CAPTURE3)
{
static uint32_t prev = 0;
union{
struct{
uint16_t byte01;
uint8_t byte2;
uint8_t byte3
}s;
uint32_t dword;
}now;
uint32_t now.s.byte01 = ICR3;
if (przepełnienie){
overflow++;
skasuj_przepełnienie;
}
now.s.byte2 = overflow;
now.s.byte3 = 0;
period = now.dword - prev;
prev = now.dword;
}
SIGNAL (SIG_INPUT_OVERFLOW3)
{
overflow++;
}
Nie chce mi się teraz szukać w dokumentacji jak się nazywają rejestry z
flagami od przepełnienia, więc musisz fragment ze sprawdzaniem
przepełnienia odpowiednio uzupełnić.
Następne wpisy z tego wątku
- 10.02.11 20:56 Robbo
- 10.02.11 21:31 Michoo
- 11.02.11 07:36 Zbych
- 11.02.11 11:05 Robbo
- 11.02.11 11:43 Michoo
- 11.02.11 12:15 Zbych
- 11.02.11 12:22 Robbo
- 11.02.11 12:24 Zbych
- 11.02.11 12:33 Zbych
- 11.02.11 12:58 Robbo
- 11.02.11 13:09 Robbo
Najnowsze wątki z tej grupy
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
Najnowsze wątki
- 2025-02-21 Warszawa => Key Account Manager IT <=
- 2025-02-21 Warszawa => Data Engineer (Tech Lead) <=
- 2025-02-21 Aliexpress zaczął oszukiwać na bezczelnego.
- 2025-02-21 Warszawa => System Architect (Java background) <=
- 2025-02-21 Kula w łeb
- 2025-02-21 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-21 Warszawa => Solution Architect (Java background) <=
- 2025-02-21 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-02-21 Pawel S
- 2025-02-21 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-02-21 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-21 Chrzanów => Programista NodeJS <=
- 2025-02-21 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-21 Warszawa => Administrator Systemów Windows IT <=
- 2025-02-21 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=