Hallo zusammen, ich habe folgendes Problem. Ich versuche vergeblich den Interrupt eingang des ATMEGA644 anzusteuern. Dazu benutze ich PIND,2. Jemand lust zu helfen? ISR(INT0_vect) { } int main(void) { DDRD =0x00; //PD2 als Eingang PORTD|= 0xFF; //Pullup aktivieren TCCR0A |= 0x00; TCCR0B|= 0x07; EIMSK |= (1<<INT0); EICRA |= (1<<ISC01) | (1<<ISC00); sei(); //Interrupts global aktivieren if(INT0==1) { Spannung++; }
Hallo, als Start wäre schonmal das vollständige Programm ganz hilfreich. Dann wäre es praktisch zu erfahren, was passieren sollte und was passiert. JamesOli schrieb: > Dazu benutze ich PIND,2. habe ich noch nie gehört, was bedeutet das? > ISR(INT0_vect) > { > > } hmmm, Du willst also, dass nichts passiert? wenn ich mir diese Zeile so ansehe: > EIMSK |= (1<<INT0); frage ich mich, was Du Dir hinsichtlich der Wirkung dieser Zeile versprichst: > if(INT0==1) Ganz offensichtlich ist Dir doch – zumindest zeitweise – klar, dass INT0 eine Konstante ist? Hat der Mega32 überhaupt EIMSK? Ist das genetische Programmierung? Einfach solange mutieren bis es passt? Dann brauchst Du aber noch ein paar tausend Jahre. Beste Grüße Timm
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.