programme ines avce xbee

Dependencies:   MMA8451Q mbed xbee_lib

Fork of Programme_course by Freescale_Cachan

motor.cpp

Committer:
Freescale_cup
Date:
2017-01-26
Revision:
0:3ec7fc598e48

File content as of revision 0:3ec7fc598e48:

#include "motor.h"


PwmOut moteurA_avancer (PTC2);
PwmOut moteurA_reculer (PTC1);

PwmOut moteurB_avancer (PTC4);
PwmOut moteurB_reculer (PTC3);


PwmOut servo (PTB0);

void PWM_motor (int vitesse_gauche ,int vitesse_droite)
{  

        if(vitesse_gauche >= 0)//On avance
        {
            moteurA_reculer.write(0);
            moteurA_avancer.write((vitesse_gauche*CORRECTION)/100.0);
        }
        else//On recule
        {
            moteurA_avancer.write(0);
            moteurA_reculer.write(vitesse_gauche/100.0);
        }          

  
        if(vitesse_droite >= 0)//On avance
        {
            moteurB_reculer.write(0);
            moteurB_avancer.write(vitesse_droite/100.0);
        }
        else//On recule
        {
            moteurB_avancer.write(0);
            moteurB_reculer.write(vitesse_droite/100.0);
        }
 
}
void motor_init()
{
    moteurA_avancer.period(1.0/FREQ_PWM);
    moteurB_avancer.write(0);
    moteurA_avancer.write(0);
    moteurB_reculer.write(0);
    moteurA_reculer.write(0);
    activate_motor = 1;
    
}
void angle_servo_moteur (double angle)
{
    if(angle > 30) angle = 30;
    if(angle < -30) angle = -30;
    angle = (angle * PWM_ANGLE_DROIT_MAX) / ANGLE_DROIT_MAX;
    angle += 0.0725; 
    servo.write(angle);
}