Forum: Mikrocontroller und Digitale Elektronik Problem bei GCC-Tutorial


von Daniel L. (daniel_l49)


Lesenswert?

Hallo, ich habe einen Code von gcc-Tutorial hier im Forum vom Timer0 
herauskopiert um es zu testen
Ich habe nur einen kleine Änderung vorgenommen und zwar habe ich in der 
ISR
das Bit0 vom PORTB auf eins gesetzt um zu testen ob das Programm in die 
ISR hineingeht
Benutzten den ATMEGA8
Das Problem ist, dass das PB0 nie 1 wird
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3
 
4
int main(void)
5
{
6
  TCCR0 = (1<<CS01); 
7
  TIMSK |= (1<<TOIE0);
8
 
9
  DDRB = 0xff;
10
 
11
  sei();
12
13
  while(1)
14
  {
15
16
  }
17
}
18
  
19
ISR (TIMER0_OVF_vect)
20
{
21
  
22
  PORTB  |= (1<<PB0);
23
}

von Karl H. (kbuchegg)


Lesenswert?

Hmm
Das Programm an sich ist in Ordnung. Dein Problem muss irgendwas mit der 
Entwicklungsumgebung zu tun haben.

Bei der Projektgenerierung den richtigen µC angegeben?
Irgendwelche Warnungen beim Compilieren/Linken?
Beim Brennen in den AVR auch das richtige Hex-File erwischt?
Das Brennen funktioniert korrekt? Hast du verifiziert, dass im µC auch 
das drinnen steht, was drinnen stehen sollte?
Misst du am richtigen Pin?
Läuft der M8 grundsätzlich?

von Daniel L. (daniel_l49)


Lesenswert?

Mega8 funkrioniert
keine Warungen beim compelieren
habe das richtige Hex_file ausgewählt
messe garantiert am richtigen Pin
Brennen funktioniert sicher korrekt

Aber ich hatte in letzter zeit Probleme mit dem Timer0

Der Timer funktioniert einfach nicht, aus welchen Grund auch immer

darum habe ich das Programm von gcc-Tutorial probiert, leider ohne 
Erfolg

von Hubert G. (hubertg)


Lesenswert?

Was für ein Testboard oder dergleichen hast du mit deinem Mega8?

von Christian (Gast)


Lesenswert?

Schonmal einen neuen Mega8 versucht? Vielleicht hast du ja den PortB bei 
einem Kurzschluss oder so mal zerstört.

von hp-freund (Gast)


Lesenswert?

Daniel L. schrieb:
> Aber ich hatte in letzter zeit Probleme mit dem Timer0

Ist denn der Oszillator ok?
Lass doch deinen Ausgangspin erst mal mit Zählschleife toggeln.

von Dennis H. (t1w2i3s4t5e6r)


Lesenswert?

Oder probiers eben mal mit einem anderen Timer. Oder einem anderen Pin. 
Setze einfach mal außerhalb der ISR irgend einen Pin auf '1', damit du 
wirklich weist, dass das Programm, was du geschrieben hast auch im Mega8 
ankommt. Einfach einzeln durchprobieren, irgendwas muss ja mal 
funktionieren. Und ab dort Fehler einkreisen.


Dennis

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.