#ifndef MOTOR_H
#define MOTOR_H

#define MOTOR_NORMAL_STARTUP


#define MOTOR1 TIM3->CCR1
#define MOTOR2 TIM3->CCR2
#define MOTOR3 TIM3->CCR3
#define MOTOR4 TIM3->CCR4

#define MOTOR_ALL MOTOR1 = MOTOR2 = MOTOR3 = MOTOR4

#define THROTTLE_MAX (unsigned short)3600	//2ms	-	top position of throttle
#define THROTTLE_MIN (unsigned short)1620	//0.9ms	-	bottom position of throttle
#define THROTTLE_MID (unsigned short)1650

#ifdef MOTOR_NORMAL_STARTUP
    #define MOTOR_SETTING() do {\
        motor_PWM_Init(36000,40);\
		MOTOR_ALL = THROTTLE_MIN;\
        delay(4000);\
		MOTOR_ALL = THROTTLE_MID;\
    } while(0)
#else
    #define MOTOR_SETTING() do {\
        motor_PWM_Init(36000,40);\
		MOTOR_ALL = THROTTLE_MAX;\
        delay(3000);\
		MOTOR_ALL = THROTTLE_MIN;\
        delay(8000);\
    } while(0)
#endif

void motor_PWM_Init(unsigned short arr, unsigned short psc);  //72MHz / (arr + 1)*(psc + 1)

#endif