ATTiny13 Timer0-CompareA-ISR wird nicht ausgeführt

Gast #2844719
Lesenswert?
• ▲
▼
Moinmoin
Ich will mich z.Z. mal wieder an nem Atmel probieren und dachte mir als 
kleine Fingerübung erstmal nen Pin-Toggel zu machen.
Als PWM auch kein Problem, aber er springt einfach nicht in die ISR 
rein.
Nachdem nix so funktioniert hat wie es soll hab ich mir einige 
Codestücke zusammengesucht, aber auch das bringt keine Besserung.
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3

4

5
int main(void)
6
{
7
  DDRB=0xFF;
8
    init_Timer0();
9
    sei();
10

11
    while(1)
12
    {
13
        asm("nop");
14
    }
15
}
16

17
void init_Timer0(void)
18
{
19
    TCCR0A = 0x02;          // CTC
20
    TCCR0B = 0x02;          // Prescaler =8 -> fTimer = 125kHz
21
    OCR0A = 0x7D;           // Comparevalue = 125
22
    TCNT0 = 0x00;           // reset Timer
23
    TIMSK0 =0x4;      // Enable compare interrupt
24
}
25

26

27
ISR (TIMER0_COMPA_vect)
28
{
29
  PORTB=0xFF;
30
}
Interessanterweise springt er nicht in die ISR, aber dafür ruft er 
init_Timer0() mehrfach auf(wenn ich mit F5 einfach laufen lasse). wtf? 
oO
Was überseh ich da?
Ach ja, Programmierumgebung ist Atmel Studio 6.
Gast #2844740
Lesenswert?
• ▲
▼
Dann muss der die Warnung aber sehr gut verstecken.
Bei mir steht nämlich nix mehr von wegen Warnung:
1
------ Build started: Project: Fototranse, Configuration: Debug AVR ------
2
Build started.
3
Project "Fototranse.cproj" (default targets):
4
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
5
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.targets" from project "C:\Users\Marodeur\Documents\Atmel Studio\Fototranse\Fototranse\Fototranse.cproj" (target "Build" depends on it):
6
  Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.Task.dll".
7
  Task "RunCompilerTask"
8
    C:\Program Files (x86)\Atmel\Atmel Studio 6.0\make\make.exe all 
9
    make: Nothing to be done for `all'.
10
  Done executing task "RunCompilerTask".
11
  Using "RunOutputFileVerifyTask" task from assembly "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.Task.dll".
12
  Task "RunOutputFileVerifyTask"
13
        Program Memory Usage   :  232 bytes   22,7 % Full
14
        Data Memory Usage     :  0 bytes   0,0 % Full
15
  Done executing task "RunOutputFileVerifyTask".
16
Done building target "CoreBuild" in project "Fototranse.cproj".
17
Target "PostBuildEvent" skipped, due to false condition; ('$(PostBuildEvent)' != '') was evaluated as ('' != '').
18
Target "Build" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Avr.common.targets" from project "C:\Users\Marodeur\Documents\Atmel Studio\Fototranse\Fototranse\Fototranse.cproj" (entry point):
19
Done building target "Build" in project "Fototranse.cproj".
20
Done building project "Fototranse.cproj".
21

22
Build succeeded.
23
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
Gast #2844744
Lesenswert?
• ▲
▼
Aber danke, das war genau die richtige Antwort.
Nachdem ich von Hand nachgeschaut hab ich rausgefunden dass das 
eigentlich
"TIM0_COMPA_vect" heißen muss.
Nu gehts auch.
Warum der Compiler aber nicht gemeckert hat versteh ich nicht.
#2844758
Lesenswert?
• ▲
▼
Marodeur schrieb:
> Warum der Compiler aber nicht gemeckert hat versteh ich nicht.

Die Warnung kommt natürlich nur, wenn die Datei auch wirklich compiliert 
wird. Das passiert aber nicht, wenn du nach einem erfolgreichen Build 
bei unveränderter Datei nochmal auf “Build“ klickst (wie bei obigen 
Output). Ändere den Namen und probiere es dann nochmal, und du wirst 
eine Warnung bekommen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.