Forum: Mikrocontroller und Digitale Elektronik Problem mit ATMEGA´s und STK500


von Konstantin L. (konze)


Lesenswert?

Hallo zusammen,

ich habe folgendes Problem ich wollte zum testen meines STK500 einen 
Blinker mit einem ATMEGA8L programmieren (AVR Studio).

Der ATMEGA Blinkt zwar aber die LED ist nur ganz schwach, wie wenn nicht 
die richtige Spannung anliegen würde... wenn ich den ATMEGA in eine 
Schaltung einbaue und VCC, GND und RESET anschließe und die LED an den 
PORTB blinkt diese nicht sondern ist dauerhaft an und leuchtet ganz 
normal wie bei 5V.
könnt ihr mir helfen?

Danke und viele Grüße,

Konstantin
1
#include <avr/io.h>
2
#include <util/delay.h>        
3
 
4
int main (void) {            
5
 
6
   DDRB = 0xff;
7
   PORTB = 0xff; 
8
 
9
   while(1) {  
10
   
11
      PORTB |= (1<<PB3);
12
13
      _delay_ms(100);
14
15
      PORTB &= ~(1<<PB3);
16
                 
17
   }
18
 
19
return 0;                 
20
}

von Harald F. (haraldf)


Lesenswert?

Du brauchst noch ein zweites Delay, sonst ist die LED nur ganz kurz 
an;-)

Gruß

von Johannes M. (johnny-m)


Lesenswert?

Zwischen dem Einschalten des Portpins und dem Ausschalten wartest Du ja 
schön. Wie wäre es denn, wenn Du auch zwischen dem Ausschalten und dem 
Wiedereinschalten eine Wartezeit einfügst? Die paar CPU-Takte, die da 
vergehen, dürften mit bloßem Auge nicht sichtbar sein...

von zeit (Gast)


Lesenswert?

du schaltest PB3 an, wartest 100ms, schaltest PB3 aus, danach sofort 
aber wieder an. das ist bestimmt nicht so gewollt.

von Konstantin L. (konze)


Lesenswert?

@ Johannes:
guter Einwurf, danke!

von Johannes M. (johnny-m)


Lesenswert?

Wenn Du übrigens den Pin nicht ein- bzw. ausschaltest, sondern nur 
toggelst (mit nem Exklusiv-ODER), dann kommste auch mit einem delay 
hin.
1
while(1)
2
{
3
    PORTB ^= 1 << PB3;
4
    _delay_ms(100);
5
}

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.