28 lines
646 B
C
28 lines
646 B
C
#ifndef ENCODER_H
|
|
#define ENCODER_H
|
|
|
|
#include "stm32g0xx_hal.h"
|
|
|
|
typedef struct DS_Encoder
|
|
{
|
|
GPIO_TypeDef *PortEncSignal1, *PortEncSignal2;
|
|
uint16_t PinEncSignal1, PinEncSignal2;
|
|
int8_t State;
|
|
int8_t Direction;
|
|
uint32_t PrevTick;
|
|
|
|
uint8_t ValueSignal1, ValueSignal2;
|
|
TIM_HandleTypeDef *hTim;
|
|
}DS_Encoder;
|
|
|
|
void DS_EncoderInitTim(DS_Encoder *Encoder, TIM_HandleTypeDef *hTim);
|
|
|
|
void DS_EncoderInit(DS_Encoder *Encoder, GPIO_TypeDef *PortSignal1, uint16_t PinSignal1, GPIO_TypeDef *PortSignal2, uint16_t PinSignal2);
|
|
|
|
void DS_EncoderUpdate(DS_Encoder *Encoder);
|
|
|
|
int8_t DS_EncoderGetState(DS_Encoder *Encoder);
|
|
|
|
|
|
|
|
#endif |