Unregelmäßigkeit beim Ablauf eines Programms.

Gast #3956709
Hallo zusammen.
Ich möchte gleichzeitig 14 Servos ansteuern.
Dazu brauche ich 14 Impulsbreitensteuerungen.
Ich möchte das folgendermaßen realisieren.
über Timer 1-Compare-Interrupt erzeuge ich die positive Flanke bei allen 
Ports.
In der Hauptschleife frage ich dann bei jedem Durchgang den aktuellen 
Timerstand ab. wenn dieser den für den jeweiligen Port zuständigen Wert 
überschreitet, wird dieser auf 0 gesetzt. Das funzt auch gut. Nun mein 
Problem:
Im Simlator klappt alles gut, Die Impuse haben die definierte Länge.
Aber wenn ich das Programm in den Chip lade, Wackelt die Impulsbreite 
unregelmäßig. Die Servos geben ständig Geräusche ab, und Zucken. Das 
wäre für meinen Zweck nicht mal so schlimm, aber sie werden durch die 
ständige Motoraktivierung zu warm.

Gibt es da auf dem Prozessor im Hintergrung irgndwelche Aktivitäten, die 
man explizit abschalten kann und müßte?
Alle Interrupts ausser dem Timer-Compare sind ausser Betrieb.

Gruß Fritz

PS Iim angehängten File habe ich alles auskommentiert, was meiner 
Meinung nach probleme bereiten könnte. Auch habe ich die Impulserzeugung 
auf einen Port beschränkt.
Angehängte Dateien:
Gast
Hallo zusammen.
Ich habe dasP roblem mittlerweile gelöst. Das Zucken der Impulse ist 
offensichlich dem Oszilosscop geschuldet. Und dass die Servos gesponnen 
haben lag daran, dass die Impulspause zu kurz war. Ich habe jetzt einen 
völlig anderen Lösungsansatz verwendet, und da löste sich das Problem 
von alleine.

Gruß Fritz

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 11 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.