Carte Romeo

De Wiki Arobose
(Langage C)
(Fonctions moteur)
Ligne 99 : Ligne 99 :
 
Nous avons ensuite créer des fonctions qui permettent au robot d'avancer, reculer et tourner en précisant la vitesse (de 0 à 255).
 
Nous avons ensuite créer des fonctions qui permettent au robot d'avancer, reculer et tourner en précisant la vitesse (de 0 à 255).
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
void
 
motor_setup(void)
 
{
 
  /* Motor controller */
 
  DDRD = (1 << PORTD4); /* E1 (PD4) as output pin */
 
  DDRE = (1 << PORTE6); /* E2 (PE6) as output pin */
 
 
  pwm_3_setup();
 
  pwm_4_setup();
 
 
  pwm_3A_enable();
 
  pwm_4D_enable();
 
}
 
  
 
/* stop */
 
/* stop */
Ligne 168 : Ligne 155 :
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
Pour finir, les fonctions main() et setup()
+
Pour finir, la fonction principale main() et les fonctions setup() qui définissent l'état des pins (entrée ou sortie) et active les modules PWM.
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
 
void
 
void
pin_setup(void)
+
motor_setup(void)
 
{
 
{
 
   /* Motor controller */
 
   /* Motor controller */
   DDRD = (1 << PORTD4); /* PD4 as output pin */
+
   DDRD = (1 << PORTD4); /* E1 (PD4) as output pin */
   DDRE = (1 << PORTE6); /* PE6 as output pin */
+
   DDRE = (1 << PORTE6); /* E2 (PE6) as output pin */
 +
 
 +
  pwm_3_setup();
 +
  pwm_4_setup();
 +
 
 +
  pwm_3A_enable();
 +
  pwm_4D_enable();
 
}
 
}
  
Ligne 182 : Ligne 174 :
 
setup(void)
 
setup(void)
 
{
 
{
   pin_setup();
+
   motor_setup();
  pwm_3_setup();
+
  pwm_4_setup();
+
  pwm_3A_enable();
+
  pwm_4D_enable();
+
 
}
 
}
  

Version du 19 juillet 2013 à 14:04

Outils personnels
Catégories