Forum: Mikrocontroller und Digitale Elektronik Interrupt rising/falling unter Bascom


von Mike (Gast)


Lesenswert?

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

von Andi (Gast)


Lesenswert?

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

von Ralf K (Gast)


Lesenswert?

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 ;-)

von Mike (Gast)


Lesenswert?

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

von dirk (Gast)


Lesenswert?

Zeig mal dein Ergebnis in BASCOM

von günter (Gast)


Lesenswert?

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

von PeterK (Gast)


Lesenswert?

ich habe dir dort mal was geschrieben
PeterK

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.