123456789101112131415161718192021222324252627282930313233 |
- #ifndef _BALA_H__
- #define _BALA_H__
- #include "Arduino.h"
- #include "freertos/FreeRTOS.h"
- class Bala {
- public:
- int32_t wheel_left_encoder, wheel_right_encoder;
- public:
- Bala();
- void ClearEncoder();
- void GetEncoder(int32_t* wheel_left, int32_t* wheel_right);
- void SetEncoder(int32_t wheel_left, int32_t wheel_right);
- void UpdateEncoder();
- // -1023 ~ 1024
- void SetSpeed(int16_t wheel_left, int16_t wheel_right);
- // 500 ~ 2500 -> 0 ~ 180
- void SetServoAngle(uint8_t pos, uint8_t angle);
- // 500 ~ 2500
- void SetServoPulse(uint8_t pos, uint16_t width);
- // used i2c lock
- void SetMutex(SemaphoreHandle_t* mutex);
- private:
- SemaphoreHandle_t i2c_mutex;
- };
- #endif
|