semf
externalinterrupt.h
Go to the documentation of this file.
1
10
#ifndef SEMF_SYSTEM_EXTERNALINTERRUPT_H_
11
#define SEMF_SYSTEM_EXTERNALINTERRUPT_H_
12
13
#include <
semf/utils/core/error.h
>
14
#include <
semf/utils/core/signals/signal.h
>
15
16
namespace
semf
17
{
21
class
ExternalInterrupt
22
{
23
public
:
25
enum
Trigger
26
{
27
None
= 0,
//<! EXTI is disabled.
28
RisingEdge
,
//<! EXTI is triggered by rising edge.
29
FallingEdge
,
//<! EXTI is triggered by falling edge.
30
RisingAndFallingEdge
//<! EXTI is triggered by rising and falling edges.
31
};
32
33
virtual
~ExternalInterrupt
() =
default
;
34
39
virtual
void
setTrigger
(
Trigger
trigger) = 0;
40
42
Signal<>
changed
;
44
Signal<Error>
error
;
45
};
46
}
/* namespace semf */
47
#endif
// SEMF_SYSTEM_EXTERNALINTERRUPT_H_"
semf::ExternalInterrupt
Interface for using a external interrupt.
Definition:
externalinterrupt.h:22
semf::ExternalInterrupt::~ExternalInterrupt
virtual ~ExternalInterrupt()=default
semf::ExternalInterrupt::setTrigger
virtual void setTrigger(Trigger trigger)=0
Sets the trigger condition of an EXTI.
semf::ExternalInterrupt::Trigger
Trigger
Definition:
externalinterrupt.h:26
semf::ExternalInterrupt::RisingAndFallingEdge
@ RisingAndFallingEdge
Definition:
externalinterrupt.h:30
semf::ExternalInterrupt::None
@ None
Definition:
externalinterrupt.h:27
semf::ExternalInterrupt::RisingEdge
@ RisingEdge
Definition:
externalinterrupt.h:28
semf::ExternalInterrupt::FallingEdge
@ FallingEdge
Definition:
externalinterrupt.h:29
semf::ExternalInterrupt::error
Signal< Error > error
Definition:
externalinterrupt.h:44
semf::ExternalInterrupt::changed
Signal changed
Definition:
externalinterrupt.h:42
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
system
externalinterrupt.h
Generated by
1.9.4