Hallo Community, ich habe gerade versucht auf dem ATTiny13a ein Programm mit Interrupt läufen zu lassen. Leider erhalte ich immer diese Fehlermeldung und kann desshalb nicht fortfahren. Es wäre toll wenn ihr mir sagen könntet woran es liegt.
Gast
#4395285
Es gibt im Tiny13 halt kein Register das TIMSK heist.
Ich hab scho mal ins Datenblatt gesehen, aber ich wüsste jezt nicht in was ich des umbenennen muss.
Gast
#4395298
TOIE0 Bit ist richtig, aber wie heißt das Register in dem es sich befindet? Die Interruptroutine benutzt außederdem auch noch den falschen Namen. INT0 ist nicht richtig. Wenn du kompilieren kannst wird es deswegen auch nicht laufen. Außerdem Listings als Textdatei anhängen bzw bei kurzen Stücken in den Codetags im Text als Code einschließen.
Gast
#4395300
Tobias K. schrieb: > Ich hab scho mal ins Datenblatt gesehen, aber ich wüsste jezt nicht in > was ich des umbenennen muss. Es gibt z.B. ein TIMSK0. Könnte doch passen und ist im Datenblatt erklärt. Und es gibt ein TCCR0A und ein TCCR0B, welches dein CS01 enthält, solltest du selber suchen - zur Übung.
Es gibt auch kein TCCR0. Ein Blick ins Datenblatt unter Timer/Counter0/Registerdescription gibt Aufschluss.
Ok, danke jetzt funktioniert es.
Tobias K. schrieb: > Ok, danke jetzt funktioniert es. Wenn kein externer Quarz angeschlossen ist funktioniert es nicht. Der interne RC oscillator läuft mit 9.6MHz, in dem Auslieferungszustand mit CKDIV8 mit 1.2MHz (low: 0x6A high:0xFF). Nur damit du dich nachher nicht wunderst warum ms_delay nicht richtig läuft und du deine Timer ISR falsch berechnest. http://www.engbedded.com/fusecalc/
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.

