Libary for control.
Diff: AvgFilter.cpp
- Revision:
- 9:9a2672ac2ef4
- Parent:
- 8:3a2131231969
--- a/AvgFilter.cpp Mon Mar 14 16:47:41 2022 +0000 +++ b/AvgFilter.cpp Thu May 05 09:13:12 2022 +0000 @@ -16,13 +16,19 @@ reset(); } +void AvgFilter::reset(float _avg) +{ + m_avg = _avg; + float scaled_inp = m_avg / (float)m_N; + m_idx = 0; + for(uint8_t i = 0; i < m_N; i++) { + m_ring_buffer[i] = scaled_inp; + } +} + void AvgFilter::reset() { - m_avg = 0.0f; - m_idx = 0; - for(uint8_t i = 0; i < m_N; i++) { - m_ring_buffer[i] = 0.0f; - } + reset(0.0f); } float AvgFilter::update(float _inp)