20 #define ENC_A_PORT PORTB
22 #define ENC_B_PORT PORTB
24 #define ENC_T_PORT PORTB
27 #define DDR(x) (*(&x-1))
28 #define Port(x) (*(&x))
29 #define PIN(x) (*(&x-2))
31 #define PHASE_A PIN(ENC_A_PORT) & (1<<ENC_A_PIN)
32 #define PHASE_B PIN(ENC_B_PORT) & (1<<ENC_B_PIN)
33 #define BUTTONPRESSED (!(PIN(ENC_T_PORT) & (1<<ENC_T_PIN)))
35 #define BUTTON_DEBOUNCETIME_MS 30
36 #define BUTTON_PRESSEDLONG_MS 250
43 }tEButtonPressedState;
EButtonPressedState
Definition: encoder.h:39
@ ButtonPressed_Short
Taster kurz betätigt.
Definition: encoder.h:41
@ ButtonPressed_Unpressed
kein Taster betötigt
Definition: encoder.h:40
@ ButtonPressed_Long
Taster lang betätigt.
Definition: encoder.h:42
tEButtonPressedState EncoderGetButtonState(void)
Liefert den Status des Tasters vom Drehencoder.
Definition: encoder.c:192
void EncoderPolling(void)
EncoderPolling.
Definition: encoder.c:66
void EncoderInit(void)
Initialisierung des Drehencoders und der Startwerte.
Definition: encoder.c:44
int8_t EncoderRead(char Ueberlauf)
Liest die akt. Position des Drehencoders.
Definition: encoder.c:143
void EncoderMinMax(int8_t EncoderMin, int8_t EncoderMax)
Setzt den minimalen und maximalen Bereich des Drehencoders.
Definition: encoder.c:179
void EncoderWrite(int8_t EncoderPos)
Setzt die aktuelle Position des Drehencoders.
Definition: encoder.c:168
volatile int8_t EncoderPos
Encoderposition für WpM/BpM.
Definition: globals.h:188