semf
inputcapture.h
Go to the documentation of this file.
1
10
#ifndef SEMF_INPUT_INPUTCAPTURE_H_
11
#define SEMF_INPUT_INPUTCAPTURE_H_
12
13
#include <
semf/utils/core/error.h
>
14
#include <
semf/utils/core/signals/signal.h
>
15
#include <cstdint>
16
#include <climits>
17
18
namespace
semf
19
{
23
class
InputCapture
24
{
25
public
:
27
enum
Trigger
: uint8_t
28
{
29
RisingEdge
= 0,
30
FallingEdge
,
31
RisingAndFallingEdge
32
};
33
34
virtual
~InputCapture
() =
default
;
35
40
virtual
unsigned
int
ticksPerSecond
()
const
= 0;
45
virtual
void
setMaxTicks
(
unsigned
int
maxTicks
) = 0;
50
virtual
unsigned
int
maxTicks
()
const
= 0;
52
virtual
void
start
() = 0;
54
virtual
void
stop
() = 0;
59
virtual
unsigned
int
ticks
() = 0;
64
virtual
void
setTrigger
(
Trigger
trigger) = 0;
65
67
Signal<>
dataAvailable
;
69
Signal<Error>
error
;
70
};
71
}
/* namespace semf */
72
#endif
/* SEMF_INPUT_INPUTCAPTURE_H_ */
semf::InputCapture
Class for utilizing the input capture from the uC.
Definition:
inputcapture.h:24
semf::InputCapture::setTrigger
virtual void setTrigger(Trigger trigger)=0
Sets the trigger source.
semf::InputCapture::dataAvailable
Signal dataAvailable
Definition:
inputcapture.h:67
semf::InputCapture::Trigger
Trigger
Definition:
inputcapture.h:28
semf::InputCapture::RisingEdge
@ RisingEdge
Definition:
inputcapture.h:29
semf::InputCapture::RisingAndFallingEdge
@ RisingAndFallingEdge
Definition:
inputcapture.h:31
semf::InputCapture::FallingEdge
@ FallingEdge
Definition:
inputcapture.h:30
semf::InputCapture::maxTicks
virtual unsigned int maxTicks() const =0
Get the maximum number of ticks from the timer.
semf::InputCapture::setMaxTicks
virtual void setMaxTicks(unsigned int maxTicks)=0
Set the maximum number of ticks at which the tick counter will overflow.
semf::InputCapture::~InputCapture
virtual ~InputCapture()=default
semf::InputCapture::error
Signal< Error > error
Definition:
inputcapture.h:69
semf::InputCapture::stop
virtual void stop()=0
semf::InputCapture::ticks
virtual unsigned int ticks()=0
Get the latest number of ticks (at the last change of the input).
semf::InputCapture::start
virtual void start()=0
semf::InputCapture::ticksPerSecond
virtual unsigned int ticksPerSecond() const =0
Returns the the number of ticks per second (Hardware timer frequency).
semf::Signal
Signal for lightweight signal/slot implementation. One signal can be connected to multiple slots and ...
Definition:
signal.h:41
error.h
semf
Definition:
batterymodelwithoutdataset.h:18
signal.h
semf
input
inputcapture.h
Generated by
1.9.4