logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[stm32L031] Jak najmniejszy pobór prądu i zliczanie impulsów

korteksik 06 Sty 2018 21:13 2151 34
Najlepsze odpowiedzi

Jak najprościej i przy jak najmniejszym poborze prądu zliczać zewnętrzne impulsy na STM32L031 w trybie STOP i raz na godzinę wysyłać wynik po RS-485?

Tak — najlepiej skonfiguruj LPTIM jako licznik impulsów z zewnętrznego źródła na wejściu, trzymaj STM32 w STOP i budź go raz na godzinę przez RTC albo cykliczny WakeUp Timer, a po wybudzeniu odczytuj CNT i licz różnicę względem poprzedniego odczytu zamiast zerować licznik [#16941376][#16941442][#17028287] Taki sposób nie wymaga wybudzania na każdy impuls i jest bezpieczny, o ile między kolejnymi odczytami nie ma więcej niż jednego przepełnienia licznika [#17028287] Przy asynchronicznym taktowaniu LPTIM odczyt CNT wykonuj dwa razy i uznaj wartość tylko wtedy, gdy oba odczyty są identyczne, bo pojedynczy odczyt może być niewiarygodny [#17028415] Nie resetuj licznika przez ponowną inicjalizację, bo w czasie resetu możesz zgubić impuls; metoda przyrostowa jest prostsza i pewniejsza [#17028287][#17028415] Dla oszczędności energii warto też odcinać zasilanie transceivera RS-485 tylko na czas wysyłania, bo może pobierać dużo więcej prądu niż sam mikrokontroler [#16941703][#16942221]
Wygenerowane przez model językowy.
REKLAMA

Podsumowanie tematu

✨ W dyskusji poruszono temat budowy urządzenia zasilanego bateryjnie, które ma zliczać impulsy zewnętrzne przy minimalnym poborze prądu. Użytkownik wybrał procesor STM32L031, planując pracę w trybie "Stop mode with RTC" oraz wykorzystanie LPTIM do zliczania impulsów. Uczestnicy dyskusji zaproponowali różne podejścia do obsługi zliczania impulsów, w tym wykorzystanie przerwań oraz metodę różnicową do obliczania liczby impulsów. Zwrócono uwagę na kwestie związane z poborem prądu przez interfejs RS-485 oraz na możliwość resetowania rejestru CNT timera. Użytkownik ostatecznie zdecydował się na resetowanie timera, co pozwoliło na osiągnięcie zamierzonych rezultatów. Wspomniano również o dostępności STM32L031 w formie płytek Nucleo-32 oraz o różnych obudowach procesora.
Wygenerowane przez model językowy.
REKLAMA