oliher
20.03.2008, 15:27
Hallo,
ich habe den Beitrag auch schon im AVR-GCC-Forum gepostet. Ich denke allerdings der Beitrag ist hier besser aufgehoben.
Verwendeter Conroller: ATmega32
Problembeschreibung:
Ich habe ein Programm in C geschrieben, welches eigentlich auch ohne Probleme funktioniert. Nur kurz zur Info: Bei dem Programm handelt es sich um eine Schrittmotorsteuerung zur Messung von Mikroschaltern.
Das Programm ist so aufgebaut, das es über RS232-Schnittstelle mit dem Controller kommunizieren kann. Ich sende also Befehle an den Controller und bekomme Ergebnisse von meinem Conrollerboard (Eigenentwicklung) zurückgeliefert.
Jetzt kam es schon einige Male vor, das z.B. nicht alle Zeichen, die der Controller an den PC senden sollte vom PC empfangen wurden.
So wurde z.B. statt: "Fehler: Kreuzstellung" nur die Zeichen "Feh" auf dem Hyperterminal des PC empfangen. Oder es wurde ein falsches Zeichen angezeigt, z.B. statt eines "i" wurde das Ascii-Zeichen peek? gesendet.
Und das schlimmste was passiert war, ist, dass sich der Motor selbständig gemacht hatte. Das hätte eigentlich nie passieren dürfen, da das Programm in einer Schleife auf ein externes Startereignis wartet und sich erst dann bewegt. Allerdings fuhr der Schrittmotor auch in die entgegengesetzte Richtung. Das Schrittsignal wird im Übrigen auch softwaretechnisch erzeugt.
Ich hab schon alles kontrolliert, ich habe mir die Controllerkarte nochmals angeschaut, überhaupt alle Leitungen überprüft, den gesamten Aufbau geerdet, nichts.
Der Austausch des Conrollers führte zumindest zu einer Verbesserung, für zwei Tage. Nun wieder dasselbe Problem.
Vielleicht liegt es an meinem Conrollerboard, ich habe die Kondensatoren und den Oszillator nicht direkt am Conroller sitzen, sonder etwas weiter davon entfernt.
Bitte um Hilfe
Ich weiß nicht mehr weiter.
Gruß Oliver
ich habe den Beitrag auch schon im AVR-GCC-Forum gepostet. Ich denke allerdings der Beitrag ist hier besser aufgehoben.
Verwendeter Conroller: ATmega32
Problembeschreibung:
Ich habe ein Programm in C geschrieben, welches eigentlich auch ohne Probleme funktioniert. Nur kurz zur Info: Bei dem Programm handelt es sich um eine Schrittmotorsteuerung zur Messung von Mikroschaltern.
Das Programm ist so aufgebaut, das es über RS232-Schnittstelle mit dem Controller kommunizieren kann. Ich sende also Befehle an den Controller und bekomme Ergebnisse von meinem Conrollerboard (Eigenentwicklung) zurückgeliefert.
Jetzt kam es schon einige Male vor, das z.B. nicht alle Zeichen, die der Controller an den PC senden sollte vom PC empfangen wurden.
So wurde z.B. statt: "Fehler: Kreuzstellung" nur die Zeichen "Feh" auf dem Hyperterminal des PC empfangen. Oder es wurde ein falsches Zeichen angezeigt, z.B. statt eines "i" wurde das Ascii-Zeichen peek? gesendet.
Und das schlimmste was passiert war, ist, dass sich der Motor selbständig gemacht hatte. Das hätte eigentlich nie passieren dürfen, da das Programm in einer Schleife auf ein externes Startereignis wartet und sich erst dann bewegt. Allerdings fuhr der Schrittmotor auch in die entgegengesetzte Richtung. Das Schrittsignal wird im Übrigen auch softwaretechnisch erzeugt.
Ich hab schon alles kontrolliert, ich habe mir die Controllerkarte nochmals angeschaut, überhaupt alle Leitungen überprüft, den gesamten Aufbau geerdet, nichts.
Der Austausch des Conrollers führte zumindest zu einer Verbesserung, für zwei Tage. Nun wieder dasselbe Problem.
Vielleicht liegt es an meinem Conrollerboard, ich habe die Kondensatoren und den Oszillator nicht direkt am Conroller sitzen, sonder etwas weiter davon entfernt.
Bitte um Hilfe
Ich weiß nicht mehr weiter.
Gruß Oliver