Schrittmotorsteuerung STM32 Timer nutzen oder nicht?

OP #2601474
Lesenswert?

Hallo alle zusammen,
Ich hoffe Ihr könnt mir eine Empfehlung für mein Problem geben.

Ich bin dabei einen Schrittmotor mit einem STM32 anzusteuern.
Das hat soweit auch geklappt. Auch das implementieren der Rampen war 
erfolgreich (Auf Basis der AVR-Appnote).

Momentan nutze ich den Interrupt eines Timers (Systick) als Zeitbasis 
und setze den Pin je nach verstrichenem Zeitintervall dt (Software-PWM):
1
switch(motorState) 
2
  {
3
    case MOVING:
4
    {
5
      if((lastTime+dt) < currentTime)
6
      { doStep();}
7
    }
8
   }

Jedoch weiss ich nicht ob die Implementierung über einen Timer mit 
PWM-Ausgang besser wäre, der beim Interrupt direkt den Pin ansteuert und 
dessen Frequenz entsprechend der Geschwindigkeit angepasst wird. Dieses 
Anpassen würde in den Rampen ja bei (fast) jedem Schritt stattfinden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren