Halo Gemeinde !!! :) Erstmal sorry für mein Deutsch. Bin Ausländer(Iteliener). Dann... mein Problem. Ich verwende einen Atmega 128 at 20Mhz. Mein Project soll eine ergänzung mit meine rc Hubschrauber werden. Videokamera, OSD, GPS, Lichter, usw. Da mein RC Anlage (W-Fly WFT09) nur 8ch zu verfügung hat, ich versuch in mein projekt noch zusätzlich 8ch aufzurüsten und in meinem Elektronik zu integrieren. Der modul in der sender ist baugleich wie der Graupner Nautic Expert. Selbstgebaut mit einem Atmega8 at 8Mhz. (http://www.toeging.lednet.de/flieger/profi/multischalt/multischalt.htm) In meinem Quelltext für der Atmega128 hab ich versucht der Quelltext von (http://www.toeging.lednet.de/flieger/profi/nautic/nautic.htm) zum Umwandeln für meine AVR GCC compiler (Eclipse IDE mit AVR GCC Plugin). Dann funktionierte nur teilweise. Nach diverse versuche ohne ergebnisse hab ich dann der Quelltext selber geschriben und auf meine Zwecke adaptiert. Soweit funktioniert nur... nicht richtig. Der Servosignal (PWM) der ich von Empfänger bekomme ist sehr stabil. Allerdings siehet es so aus dass der Controller nicht schafft der signal zu stabilizieren. Nur ich kann der Problem nicht richtig finden woher liegt. Ich hab ein Video Hochgeladen der der problem zeigen soll. Der link ist: http://www.youtube.com/watch?v=zDYbcipEx0g Die erste zwei wert (2050) sinds die zwei syncronisatins impulse. Die andere 8 sollen die 8 schalterstellungen sein. 1936 = Shalter Oben. 1241 = Schalter unten; Im Anhang liegt mein Quelltext. Ich frage hilfe an euch Experten (da ich noch eine Anfänger bin !!) Wo ist dann der Feheler ??? Warum ist der Signaldecodierung nicht stabil ?? Danke im vorraus für Eure Antwort.
Hallo, der erste Fehler ist, dass deine ISR zu lang ist. Dann solltest du den Timer nicht dauernd anhalten und wieder starten. Der AVR besitzt die Input Capture Funktion, die für das Messen von Impluslängen am besten geeignet ist, da sie sowieso dafür vorgesehen ist. Irgendwo hier im Forum fliegt eine Lösung für eine robbe/Futaba-Fernsteuerung herum, um ein Multiswitch-/Nautic-Modul auszulesen. Ich weiß leider nicht mehr, wo genau der QUellcode zu finden ist. Wenn man nach "Modellbau" oder "Servo" sucht, müsste man den Quellcode finden.
Danke für deine schnelle Antwort !!! Am morgens bin ich ins Geshäft beschäftig dann hab ich nur Abends paar stunden frei. Der Sender(W-FLY WFT09 ) ist 8 Kanäle. Hab ich der PPM signal abgegriffen damit der Controller weist wann alle 8 Kanäle info gesendet worden sind. Das eisst dass jede synchronisations impuls wird ein Kanal Info geschickt. Also von der Senderseite sinds überhaupt keine Probleme. (Übrigens der WFLY-WFT09 ist von einen Atmega128 gesteuert) Hab ich versucht mein Quelltext zu ändern damit ich der Input cature benutzen kann. Leuft soweit ruhiger als voher aber immer noch nicht stabil. Dann hab ich der ISR so modifiziert das ich einfach die 10 Signale auslesen(oder ausmessen ?!?) kann. Und der ergebnis siehet jezt so aus http://www.youtube.com/watch?v=0oD16QSwzFU Ich hab einfach der Sender eingeschaltet und keine schalter betätigt damit mann die zwei syncronisationspuls sehen kann. Werden 10 impulse übertragen. 2 Sync un 8 Kanalinformationen. Ich verstehe das nicht ! Wo ist der problem ??? Kann es sein dass der Atmega128 bei 20Mhz zu langsam ist für diese Job ??? Danke fürs Antwort !!! :)
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.