Forum: Mikrocontroller und Digitale Elektronik Verzweifle schon mit meiner Servo Ansteuerung [mega8/Timer]


von Florian K (Gast)


Lesenswert?

HI!

Ich bin schon wirklich fast vorm Kollaps
Beschäftige mich nun schon die letzten 3 Tage und Nächte mit der
Ansteuerung eines Servos am Mega8 mit Hilfe von Timer Interruptus, und
Compare Values, doch irgendwie will das bei mir einfach nicht
funktionieren...

Hab mittlerweile schon zig verschiedene Versionen und unterschiedliche
Programmierung des Ansatzes versucht, doch entweder der Servo fährt auf
die eine Seite voll aus, oder macht überhaupt keinen Zucker...

Eine Ansteuerung die Sich der Delay Funktion bedient hab ich schon
realisieren können, doch ist diese Leider ungeeignet, da hier der
Controller für eine zu lange Zeitspanne immer wieder blockiert wird.

Verwende den Standard 8 Mhz takt, hab allerdings auch noch einen 3,6864
Mhz Quarz auf meinem Board

Hat eventuell irgendwer einen Funktionsfähigen Quellcode für mich, denn
im Moment sehe ich vor lauter „Das muss doch so funktionieren“
Überlegungen schon nur mehr die verschiedenen Ansätze, die doch passen
müssten...

Würde j sagen, ich lass das ganze Thema einfach mal für einen Tag
ruhen, doch leider hab ich’s mit der Umsetzung dieses Problems sehr
eilig...

Währe cool wenn mir da wer weiterhelfen kann
Flo

von crazy horse (Gast)


Lesenswert?

dann setz doch mal rein, was du schon hast. Was nützt dir fertiger
funktionsfähiger Code, wenn du ihn nicht verstehst.
Aber in der Tat, es ist ist eigentlich extrem simpel, in etwa
vergleichbar mit einer blinkenden LED :-)

von Dirk Schlage (Gast)


Lesenswert?

Hi,
ich habe gestern den Code von
http://www.schoeppl.info/de/elektronik/servotester/servotester.aspx
an meinen Mega48 angepasst. (ein Registername)
Den ADC-Teil habe ich rausgeschmissen, und den Servo erstmal rampen
fahren lassen. Hat prima geklappt.
Der Code ist sehr knackig und fährt auch nicht ständig in
Warteschleifen rum, ich denke er ist ein guter Ausgangspunkt. Das
Wichtigste ist die Zeitdauer, die der Port an ist, die Gesamtzykluszeit
darf auch niedriger sein.

Gruß
    Dirk

von Thomas K. (thkais)


Lesenswert?

Vielleicht ist dies ein Ansatz:

http://www.4finger.net/cms/servomaster.html

von Hannes L. (hannes)


Lesenswert?

Ist zwar nicht Mega8, sondern Mega48 oder AT90S4433, erzeugt aber
mehrere Servoimpulse mit Timer:
http://www.hanneslux.de/avr/mobau/7ksend/7ksend02.html
Vielleicht hilft es Dir ja weiter...

...

von Florian K (Gast)


Lesenswert?

Danke Dirk!

Der Code Schaut sehr Viel versprechend aus, und ist wirklich recht
simpel gehalten...

wenn ich bedenke was ich da mit den compare values herumprobiert habe,
so schaut das wirklich viel versprechend aus...

werd das ganze gleich mal in die Tat Umsetzen, und schauen was dabei
rauskommt...

greets flo

von Dirk Schlage (Gast)


Lesenswert?

Und...
...hast du irgendwelche Fortschritte erzielen können?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.