Branchement boost DRV8711 avec un moteur pas a pas 24v et une arduino nano every

Bonjours
J'essaie de faire tourner un moteur pas à pas avec boost DRV8711 et une arduino nano every


Lorsque je réalise le branchement de tout ca, lorsque je téléverse le programme sur la carte rien de ce passe
Mais en testant la tension au borne de sortie de l'arduino, il y a une tension qui change comme souhaité

int STEP = 8;
int DIR = 4;
int n;
 
void MotorStep( int sens, int DureePas) {
  digitalWrite(DIR, sens);
  digitalWrite(STEP, 1);
  delayMicroseconds(DureePas / 2);
  digitalWrite(STEP, 0);
  delayMicroseconds(DureePas / 2);
}
 
void setup() {
  // put your setup code here, to run once:fault
  pinMode(STEP, OUTPUT);
  pinMode(DIR, OUTPUT);
}
 
void loop() {
  n = 0;

  while (n < 250) {
    MotorStep(0, 100000);
    n = n + 1;
  }
  while (n > 0 ) {
    MotorStep(1, 100000);
    n = n - 1;
  }
}

bonne journée
https://www.ti.com/lit/ug/slvu967a/slvu967a.pdf

Bonjour,

On se doute bien qu'il y a un moteur et une alimentation pour le dit moteur, mais on ne voit rien de tout cela sur le schéma!

A noter la Nano Every est en interface 5V et la Boost DRV8711 en interface 3.3V.

Gros problèmes dans l'attente:

  1. dans MotorStep(0, 100000);, le nombre 100000 est supposé être un entier. Pour avoir un long il faut le préciser par L ou UL en fin; 100000 est sur 16 bits (possible que cela donne 34464 seulement si il est tronqué). 100000UL est sur 32 bits et donne bien la bonne valeur
  2. avec void MotorStep( int sens, int DureePas) on demande que ce paramètre soit un int c'est à dire un entier signé 16 bits dont la plus grande valeur possible est 32767. Si on lui donne 34464, ce nombre devrait être tronqué et la valeur pourrait être 1696
  3. De toutes façon la valeur maximale que l'on peut donner à delayMicroseconds est de 16383

Si les branchements sont corrects et que l'on attend 1696/2µs, soit 848µs, avec un moteur 200 pas par tour, il devrait faire un tour en 200*848µs soit 0,17s et tourner à 6tr/s. Il y a des fortes chances qu'il ne puisse suivre.

Quelle est la période sur la broche 8? Si c'est 50ms, je mange mon chapeau (pas grave, je n'en ai pas).