Licznik impulsów (impulse counter) - Arduino IDE

Awatar użytkownika
klew
Posty: 1131
Rejestracja: czw cze 27, 2019 12:16 pm

pt wrz 11, 2020 8:45 pm

Nadszedł czas przerzucenia SuplaImpulseCounter na framework zgodny z nową biblioteką.
To był ostatni element "starej" SuplaDevice, który nie działał "po nowemu". Tym samym zatoczyłem krąg, bo SuplaImpulseCounter był moim pierwszym wkładem w projekt Supla, który udostępniłem prawie dokłądnie rok temu (bez 11 dni) i jako ostatni został przepisany. To tyle tytułem wstępu, a teraz do rzeczy!

Liczniki impulsów dodajemy przez:

Kod: Zaznacz cały

#include <supla/sensor/impulse_counter.h>

// w setup:
auto *ic = new Supla::Sensor::ImpulseCounter(PIN_DO_IMPULSÓW, true, false, 50);
Licznik potrzebuje klasy typu "Storage", do przechowywania zliczony impulsów między resetami urządzenia (tutaj opis jak dodać i używać Storage: viewtopic.php?f=61&t=7162 ).

Licznik zaczyna liczyć od 0 lub od wartości zapisanej w pamięci. Jeśli chcesz wyczyścić licznik, lub ustawić dowolną wartość początkową, to można użyć metody:

Kod: Zaznacz cały

ic->setCounter(nowa_wartosc);
Wartość countera można pobrać:

Kod: Zaznacz cały

counter = ic->getCounter();
W bibliotece jest też gotowy przykład do Arduino IDE. Zmiany czekają w pull request, ale całość możecie pobrać już teraz z mojego githuba: https://github.com/klew/arduino
WinstonW
Posty: 7
Rejestracja: pt lip 10, 2020 3:50 pm

ndz wrz 13, 2020 7:52 pm

a czy jest możliwośc podpięcia przycisku resetu ?
Awatar użytkownika
klew
Posty: 1131
Rejestracja: czw cze 27, 2019 12:16 pm

ndz wrz 13, 2020 8:01 pm

WinstonW pisze:
ndz wrz 13, 2020 7:52 pm
a czy jest możliwośc podpięcia przycisku resetu ?
Mówisz i masz ;). Dodałem taką opcję:

Kod: Zaznacz cały

  button1->willTrigger(*imp, Supla::ON_PRESS, Supla::RESET);
WinstonW
Posty: 7
Rejestracja: pt lip 10, 2020 3:50 pm

pn wrz 14, 2020 4:56 pm

Dzięki Klew ,zawsze można liczyć na Twoją pomoc
bigthomas
Posty: 52
Rejestracja: pn sie 12, 2019 3:35 pm

wt wrz 15, 2020 8:07 am

W 36 linii w arduino/libraries/SuplaDevice/src/supla/storage/eeprom.cpp brakuje średnika :)
Awatar użytkownika
klew
Posty: 1131
Rejestracja: czw cze 27, 2019 12:16 pm

wt wrz 15, 2020 9:18 am

bigthomas pisze:
wt wrz 15, 2020 8:07 am
W 36 linii w arduino/libraries/SuplaDevice/src/supla/storage/eeprom.cpp brakuje średnika :)
Dzięki. Już poprawione.
ODPOWIEDZ

Wróć do „Arduino IDE”