Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: capsense.cpp
- Revision:
- 0:4e3ad938564e
- Child:
- 1:40e5ac1119a6
diff -r 000000000000 -r 4e3ad938564e capsense.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/capsense.cpp Tue Jun 28 21:32:51 2022 +0000 @@ -0,0 +1,34 @@ +#include <mbed.h> +#include "capsense.h" + +CapSense::CapSense(PinName measure_pin, PinName square_pin) + : cap_sense_measure(measure_pin), square_wave(square_pin), + measured_this_cycle(false) {} + +bool CapSense::toggle() { + bool last_signal = square_wave.read(); + square_wave.write(!last_signal); + if (!last_signal) { + measured_this_cycle = false; + timer.start(); + } + return !last_signal; +} + +bool CapSense::try_measure() { + if (cap_sense_measure.read() == 1 && !measured_this_cycle) { + timer.stop(); + last_measurement = timer.read(); + measured_this_cycle = true; + timer.reset(); + return true; + } + return false; +} + +long CapSense::read_measurement() { + return last_measurement; +} + + + \ No newline at end of file