Hallo Leute, ich möchte mit BASCOM ein Program schreiben, mit dem ich ein Empfängersignal von einer Modellfernsteuerung einlesen und anschliessend für Schaltzwecke(Beleuchtung, Sonderfunktionen) weiterverarbeiten kann. Wie man Servos ansteuert, weiss ich, aber wie ich ein Signal einlesen soll, ist mir ein Rätsel. Ich habe schon die Suchfunktion benutzt, da gibt es schon Beiträge, aber ich finde nichts für BASCOM sondern nur in C oder Assembler. Hat evtl. jemand eine Einleseroutine schon mal geschrieben und würde mir weiterhelfen ? Gruß Ralf
kommt drauf an was du an resourcen freihast, ein Timer und ext. Int brauchst du für eine einfache Lösung. 1) Timer so konfigurieren dass er bei ca. 2,5 ms überläuft. 2) ext. Int auf steigende Flanke 3) idlen oder sonstwas machen folgende Interrupt-Routinen brauchst du noch 1) ext. int: if (steigende Flanke) Timer = 0 enable timer overflow interrupt config ext. int auf fallende Flanke else Servowert = Timer flag setzen dass neuer Wert disable timer int. config ext. int auf steigende Flanke reti 2) timer overflow: (Impuls ist zu lang und daher ungültig) disable timer int. config ext. int auf steigende Flanke reti im Hauptprogramm prüfst du das Flag, wenn gesetzt Kontrolle ob Zeit zw. 1 und 2ms und du hast den übertragenen Impuls, eventuell noch Mittelwertbildung über die letzten empfangenen Werte Obiger pseudo code sollte sich recht einfach in Bascom portieren lassen. grüsse leo9
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.