/** @file encoder.h * @date 2014-12-04 * @author Frank Klee * @brief Headerdatei Drehencoder Library * * Basisroutinen zum Abfragen eines Drehencoders mittels Polling. * Quelle: https://www.mikrocontroller.net/articles/Drehgeber * * @brief Formatierungen und Umbenennungen der Funktionen * @author Tom, DL7BJ * @date 2023-03-23 */ #ifndef ENCODER_H_ #define ENCODER_H_ // Art des Drehencoders definieren // #define SingleStep // #define TwoStep #define TwoStep ///< Art des Drehencoders #define ENC_A_PORT PORTB ///< port for line A #define ENC_A_PIN PB1 ///< pin for line A #define ENC_B_PORT PORTB ///< port for line B #define ENC_B_PIN PB0 ///< pin for line B #define ENC_T_PORT PORTB ///< port for button #define ENC_T_PIN PB2 ///< pin for button #define DDR(x) (*(&x-1)) ///< Makro Datenrichtungsregister #define Port(x) (*(&x)) ///< Makro Port #define PIN(x) (*(&x-2)) ///< Makro Pin #define PHASE_A PIN(ENC_A_PORT) & (1<