Forum: Mikrocontroller und Digitale Elektronik ATMega16 PortB Pins vertauscht?


von Florian K. (f-kae)


Lesenswert?

Hallo,

ich fange gerade erst an mit µC zu arbeiten. Folgendes habe ich auf 
meinen ATMEGA16 programmiert:

#include <avr/io.h>

void main(void)
{
  DDRB = 0b00000001; //Pin0 to Output (Data Direction Register pin0 on 
portB to output)
  PORTB = 0b00000001; // Pin0 -> 5 Volts

  while (1)
  {}
}

Nun bekomme ich nach der Programmierung an PB0 bis PB6 0V und an PB7 
4,6V. Sollten die 4,6 V nicht an PB0 liegen? Woran kann das liegen?

Viele Grüße,
Florian

von RundePlatine (Gast)


Lesenswert?

Kann es sein, dass du in der falschen Richtung am µC gemessen hast und 
dich so selber veräppelst ?

von Florian K. (f-kae)


Lesenswert?

OK, beim Erstellen eines anschuungsbildes das ich keinen Fehler gemacht 
habe habe ich bemerkt das ich am Reset PIN die 4,6V und an allen PB0-7 
0V anliegen habe :/
Dann muss wohl etwas beim Übertragen schief gelaufen sein.

Vielen Dank schonmal :)

von Florian K. (f-kae)


Angehängte Dateien:

Lesenswert?

der yC scheint die Programmierung zu verlieren sobald ich ihn vom 
Evaluationboard nehme.
MAche ich etwas grundlegendes falsch, wenn ich den ATMEGA16 auf dem 
"grünen" board programmiere und dort auch die eingestellte Spannung an 
PB0 bekomme, ihn dann aus dem "grünen" board rausnehme und in das 
"weiße" Board einstecke. Dort habe ich dann an PB0 0V.

Die Spannung an VCC ist 5V! Das habe ich überprüft.

von Stimmy (Gast)


Lesenswert?

Die Beschaltung ist nicht so toll; eigentlich gehört ein 
100nF-Kondensator zwischen VCC und GND; beide GND-Pins sollten an Masse 
angeschlossen werden und AVCC sollte mit VCC verbunden werden.

Prüfe außerdem, ob die Fuses so gesetzt sind dass der µC den internen 
RC-Oszillator als Taktquelle benutzt.

von Klausy (Gast)


Lesenswert?

Denk auch an den Reset-Pin

von Florian K. (f-kae)


Lesenswert?

Vielen Dank! Die Fuses waren nicht richtig eingestellt!

Nun funktioniert es! :D

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.