ATMega anfänger Probleme

OP #319734
Lesenswert?

Hallo!

Ich versuche grade ein bisschen mit den Ports zu arbeiten und habe zu
Testzwecken folgendes auf einem Breadboard aufgebaut:

An PortA:
PinX---R 240 Ohm---LED---Vcc

und an PortC:
PinX---R 12k Ohm---Vcc
     \
      --[  ]-------GND
       (als Schalter sozusagen)

Nun habe ich folgendes Programm geschriben:
---
#include <avr/io.h>

int main()
{
  DDRA = 0xff;
  DDRC = 0;
  while (1)
  {
    PORTA=PINC;
  }
}
---
Wenn der Microkontroller nun läuft siehts so aus:

(kein "Schalter" geschlossen)

PA0: LED aus
PA1: LED aus
PA2: LED an
PA3: LED an
PA4: LED an
PA5: LED an
PA6: LED aus
PA7: LED aus

Beim schließen der Schalter 2-5 an PortC passiert nichts. Wenn man
0,1,6 oder 7 auf GND zieht, gehen die entsprechenden LEDs an (Wobei ich
ab und zu schon erlebt habe das wenn ich PC0 gegen GND ziehe, PA0 und
PA1 an gehen. Das mag aber evtl auch an der Breadboard konstruktion
liegen)

Nun habe ich erstmal probiert ein bestimmtes Bitmuster auf PortA
auszugeben, was auch korrekt funktionierte. Deshalb gehe ich mal davon
aus, dass da beim Eingang etwas nicht korrekt läuft. Die Schaltung
läuft an einem Labornetzgerät auf genau 5V.

Könnte mir da vielleicht jemand helfen?

CU
Matthias
Gast #319739
Lesenswert?

Da sieht man mal wieder wie hilfreich Foren sind!

ich hatte genau das selbe problem.
hab dann das fuse bit gelöscht und nu geht es..
da soll soll erstmal einer draufkommen... im datenblatt steht zwar dass
des net geht wenn JATG enabled ist, aber man geht ja nicht davon aus,
dass diesen bit dafaultmäßig gesetzt ist und sucht stundenlang nach
anderen fehlern..

ein hoch auf mikrokontroller.net
gruß martin

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren