123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #ifndef __CADENCE_SENSOR_H
- #define __CADENCE_SENSOR_H
- #include "stm32f1xx_hal.h"
- #define CADENCE_1_Pin GPIO_PIN_3
- #define CADENCE_1_GPIO_Port GPIOB
- #define CADENCE_2_Pin GPIO_PIN_15
- #define CADENCE_2_GPIO_Port GPIOA
- typedef enum
- {
- MC_Cadence_Forward = 0x00,
- MC_Cadence_Backward = 0x01,
- MC_Cadence_Stop = 0x02
- }MC_CadenceDir_Struct_t;
- //踏频检测结果
- typedef struct
- {
- uint8_t Cadence_Data; //踏频值
- MC_CadenceDir_Struct_t Cadence_Dir; //踏频方向
- TrueOrFalse_Flag_Struct_t IsStopFlag; //踏频停止标志
- uint32_t TrigCount; //正向踩踏信号计数
- }MC_CadenceResult_Struct_t;
- //踏频传感器输出状态
- typedef struct
- {
- uint8_t HallGropuStatus;
- uint8_t HallGropuStatus_Old;
- }MC_CadenceSensorStatus_Struct_t;
- extern const uint8_t ForwardDir_EncoderData[4];
- extern const uint8_t BackwardDir_EncoderData[4];
- //踏频值滤波缓存
- extern MC_CadenceResult_Struct_t MC_CadenceResult;
- extern uint16_t MC_Cadence_Array[10];
- extern uint16_t torqueByCadence_180;
- extern uint8_t Cadence_ReadHallState(void);
- extern void CadenceSensor_GPIO_Init(void);
- extern void CadenceSensor_Process(MC_CadenceResult_Struct_t* p_MC_CadenceResult, uint16_t StopDelayTime, uint8_t StarCount, TrueOrFalse_Flag_Struct_t UpSlopeFlag);
- #endif
|