Hier ein nützliches Programm zum Auslesen eines (Modellbau-)Empfängersignals via Timer-Capture und Ausgabe des gemessenen Wertes an ein Servo. Diese Funktionen sind Interrupt-gesteuert! Zusätzlich erfolgt die Ausgabe des gemessenen Wertes an die Serielle Schnittstelle als Hex-Zahl. Das Programm ist für einen 4433 mit 4Mhz geschrieben. Ein Kanal des Emfängers wird an PIN 14 (ICP) angeschlossen. Das Servo kommt an einen Pin von Port D. Im Moment wird der gemessene Wert 1:1 auf das Servo gegeben. an der gekennzeichneten Stelle in 'main' kann aber beliebig gemischt, geregelt etc. werden ... Bitte gebt Feedback, ob sowas nützlich ist ... UBoot-Stocki
Jo, mit dem ganzen Servo-Zeugs experimentier ich auch gerade rum. allerdings in C (avrgcc). Mit asm hab ich nicht viel am Hut, deshalb kann ich nichts mit anfangen, sorry! Aber kannst Du ja nichts dafür, ist ja mein Problem.... Trotzdem weiter so.. Gruß Steffen
hi Steffen Z. kannst du mir dein c file schicken? habe da auch schon was mit asm programmiert aber will nun auf c umsteigen sascha
Hi Steffen Z. ich hätte auch gerne deinen C-code wenn's dir nichts ausmacht. Wollt da schon lange mal in dieses Thema einsteigen. Danke, Stefan
Ja Steffen Z., stell doch mal den C-Code ins Forum... Gruß UBoot-Stocki
Hallo, Auf dieser Seite gibt es eine C-Code für Servos. http://rsl.engr.scu.edu/~pstang/avr/avrlib/docs/servo_8c-source.html .... Ich hab´s leider noch nicht zum laufen gebracht, da ich ein blutiger Anfänger bin. :( Gruß Zoltan
hi zoltan, leider geht deine seite nicht :-) sascha
Hallo, die Seite ist umgezogen. Ich habe den neuen Link ausfindig gemacht. http://hubbard.engr.scu.edu/avr/avrlib/docs/servo_8c-source.html Viel Erfolg! (und wenn dabei etwas Vernünftiges herauskommt, wäre ich auch an dem Ergebnis interessiert) Gruß Micha
Hallo Ich bräucht so was für alle 8 Kanäle des Empfängers. Die Daten kommen nach einander auf einer Leitung daher. Hat jemand da eine Idee. Danke
Hehe .. vor 2 Wochen hab ich mich auch an das Projekt herangewagt .. mal anschauen wie du´s gelöst hast ... grüße, Omnitroc
Hi Omnitroc, wie ist der Stand Deines Projektes ? @ALL: Besteht Interesse an einer erweiterten/verbesserten Version ? MfG UBoot-Stocki
Ja. Es besteht Interesse an einer erweiterten/verbesserten Version. Baust du U-Boote? wenn ja mal eine OFF-TOPIC-frage! Wo gibt es ein Forum für u-boote?
Du hats gefragt, ob interesse besteht: auf jeden fall! Ich wollte eigentlich genau das gleiche machen, ein programm, welches ein PWM signal für rc-motorstellen generiert. aber da hab ich grad deins gefunden, und mal angucken schadet ja nie ;-). aber bisher läufts nicht so richtig auf meinem mega8 an den ich mal schnell einen empfänger und nen servo geschustert hab. naja, ich wühl mich erstmal durch die programmstruktur. Tschö Matthias
Hi, über Weihnachten habe ich Zeit und stelle die Variante für meine X-Ruder-Steuerung ins Forum. Ein Atmel bekommt 3 Empfängersignale und mischt zum X-Ruder das Gas auf 4 Servos (http://uboot-stocki.bei.t-online.de/mini-version2.jpg). Bei Fragen: uboot-stocki@t-online.de Gruß UBoot-Stocki
Hi, auf speziellen Wunsch ;-) anbei also meine aktuellste Variante des Servo-Programms. Ich verwende das Programm zum Steuern eines Modell-Ubootes. Drei Kanäle eines Empfängers werden über den Controller auf 4 Servos gemischt. Diese Aufgabe übernimmt ein ATTiny26L-Controller, der für diese Aufgabe besonders geeignet ist. Dieser Baustein besitzt eine "Pin Change Interrupt" auf 11 Pins. Kein anderer Atmel-Controller kann das (Siehe Seite 36 des Datenblatts http://www.atmel.com/dyn/resources/prod_documents/doc1477.pdf). Hoffe mal, dass die Dokumentation des Programms ausreicht. Fragen bitte hier im Forum - Mails bringen niemand weiter ... Gruß UBoot-Stocki
Nur ergaenzend: >...Dieser Baustein besitzt eine "Pin Change Interrupt" auf 11 Pins. > Kein anderer Atmel-Controller kann das... Falls viele "Pin Change Interrupt"-Pins gebraucht werden und dazu auch noch mehr Speicher oder Hardware-Funktionen als der ATtiny26 bietet: ATmega169
Ok, Ok, was ich damit meinte: Kein Chip wie z.B. der Mega8 oder so (also mit weniger als 40 Pins) kann das. Ich weiss, der Tiny15 hat auch Pin-Change Interrupt - da reichen aber die Pins nicht. Drei Eingänge, 4 Ausgänge puls Vcc und Masse macht 9 ... Er hat aber nur 8 Pins. Daher kam für mich nur der Tiny26 in Frage. Finde dass das ein ganz praktischer Baustein ist. Obendrein benötigt er keinen Quarz. In meinem Boot ist echt nur der Chip drin und ein 5Volt Regler, da das BEC des Fahrtreglers die 4 Servos nicht packte ... Gruß UBoot-Stocki
Hi, hat schon jemand meinen neuen Code auprobiert? Gruß Uboot-Stocki
Hier iss Feedback.. ich habe leider keinen Tiny 26, sondern nur einen Mega8. Ich will die Empfängersignale nacheinander an einem Pin auflaufen lassen, (Layout war schon fertig) wann handlest du die Auswertung? in der Pause zwischen dem letzten Kanalimpuls und dem Start/Synchronimpuls, oder machst Du nach jedem Paket den nächsten Kanal? Gruß AxelR.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.