Seite 1 von 1

Interrupt handling LPC für Goobay 95173

Verfasst: 2. Mai 2017, 13:53
von dega
Hallo,

ich bin neu hier im Forum und versuche mich aktuell daran die neue Version des Goobay 95173 Bewegungsmeldung auf Basis des TS-DIL Moduls mit LPC922 ans laufen zu bekommen. In einem anderen Beitrag hier im Forum wird recht detailliert auf die Unterschiede eingegangen. Peterk hat dort auch eine Lösung mit ARM Modul gepostet.
Wichtigster Unterschied scheint zu sein, dass ein 50Hz Signal erzeugt werden muss.
Ich habe nun auf Basis der in8 Sourcecodes versucht ein Signal auf einem der Output Pins zu geben. Dafür habe ich folgenden Code eingefügt:
void restart_app(void) // Alle Applikations-Parameter zurücksetzen
{
...
ifdef o50hz
P0_7=0;

TMOD&=0xf0; //register für Timer 0 löschen
TMOD|=0x02; // Timer 0 als reload, Timer 1 nicht ändern !
TAMOD&=0xf0;
TH0 = 0xff;
AUXR1&=~0x10; // toggled whenever Timer0 overflows ausschalten
ET0=1; // Interrupt für Timer 0 freigeben
TR0=1; // Timer 0 starten
#endif
...
}

#ifdef o50hz
void tr0_int(void) __interrupt 1
{
TL0=0x09; // timer mit H=0xf9 L=0x09 2KHz = 0,5ms
TH0=0xf9;

P0_7^=1;
}
#endif

Leider ohne Erfolg bisher. Timer 0 ohne Interrupt funktioniert, wenn ich den Output Pin in restart_app() laufen lassen. Mit Interrupt bleibt Pin 0.7 auf 0.
Vielleicht kann mir hier jemand weiterhelfen. Für Tipps wäre ich sehr dankbar!
Gruß
Frank

Re: Interrupt handling LPC für Goobay 95173

Verfasst: 2. Mai 2017, 21:18
von oldcoolman
Der Interrupt muss in der .h Datei definiert sein, sonst legt der compiler die Einsprungadresse nicht fest.

Re: Interrupt handling LPC für Goobay 95173

Verfasst: 3. Mai 2017, 20:43
von dega
Hallo Andreas,

besten Dank für den Tipp. Funktioniert jetzt.
Gruß
Frank