Hallo, ich hab folgendes Problem: Ich moechte unter Bascom, innerhalb eines Programmes den Interrupt umkonfigurieren von Rising auf Falling. (Moechte die Zeit mit Hilfe eines Timers, zwischen Rising und Falling messen) siehe : Config Int1 = Rising On Int1 Int1_ris Enable Int1 Int1_ris: Disable Int1 Timer1 = 0 Config Int1 = Falling On Int1 Int1_fal Enable Int1 Return Int1_fal: Disable Int1 measure_tim = Timer0 Config Int1 = Rising On Int1 Int1_ris Enable Int1 Return Leider bekomme ich beim compilieren dann immer eine Fehlermeldung: ISR already defined und zwar fuer die beide letzten Zeilen "on int1 ...." Bin um jede Hilfe dankbar Gruss Mike
Und wenn Du den Int1 auf Toggle, also rising und falling einstellst? Muß dann in der Int1-ISR nur herausfinden, ob nun rising oder falling bzw. das Int1-Bit prüfen und danach verzweigen. MfG Andi
Hi Mike, du kannst in der laufenden Interruptroutine den Interrupt nicht umdefinieren. Lösung: in der Interruptroutine ein Flag setzen und dann im Hauptprogramm auf die fallende Flanke warten. Vielleicht auch in der Interruptroutine auf die fallende Flanke warten, aber das ist eine unsichere Lösung, könnte sein, daß da "jemand" dazwischenfunkt. lg Ralf ;-)
Vielen Dank Andi und vielen Dank auch Ralf lach Hab derweilen schon die "ultimative Lösung" gefunden. So wie es Ralf schon sagte, hab Rising / Falling in einer externen Routine, durch Flag´s gesteuert ausgewertet. Klappert wunnnneeebaaaar :o) Dankeschön :o) lg Mike
Hallo Da sind ja doch einige BASCOM-Experten im Forum... :-( Könnte mir einer weiterhelfen bei meinem Problem ?? siehe http://www.mikrocontroller.net/forum/read-1-195086.html#new gruß günter
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.