Forum: Mikrocontroller und Digitale Elektronik ATmega8-16, minimale Grundschaltung


von Daniel M. (diodan)


Lesenswert?

Hallo zusammen.

Mit einem neuen STK 500 und einer Handvoll ATmega8-16 bewaffnet habe
ich nun ein sehr grundsätzliches Problem mit dem Schaltungsaufbau.

Laut Datenblatt sind die Fuse-Bits des ATmega8 ab Werk so eingestellt,
daß der interne Oszillator einen Takt von etwa 1 MHz liefert. Laut
einiger Personen und Webseiten kann man einen ATmega8 außerdem schon
dann erfolgreich betreiben, wenn "Reset" hochgezogen und "VCC"
sowie "GND" entsprechend beschaltet sind. Die Vorsichtsmaßnahme,
"AGND", "AREF" und "AVCC" ebenfalls zu beschalten, scheint
hingegen nicht überall verbreitet zu sein. Mit diesen Informationen
habe ich nun meine erste AVR-Schaltung gebastelt:

"Reset" wird über einen 10kOhm-Widerstand an VCC (+5V aus einem 7805)
hochgezogen und ist durch einen kleinen Kondensator (2.2nF, etwas
dürftig vielleicht) gegen Masse abgeschlossen. "VCC" kriegt +5V,
"GND" liegt an Masse. Die Bits 0 bis 2 des Port B sind mit LEDs
verbunden, und zwar (wegen "active low") jeweils so:

PBx -- R(453 Ohm) -- (K)LED(A) -- VCC(+5V)

Während der ATmega8-16 im STK 500 nach der Programmierung das
gewünschte leistet und die LEDs wie geplant leuchten läßt, passiert
dies in der erwähnten Schaltung überhaupt nicht. Wenn ich allerdings
direkt GND auf PBx (1,2) gebe, leuchten die LEDs an PBx und PB2. Das
finde ich zwar faszinierend, aber auch blöd. ;-)

Habe ich etwas wichtiges übersehen? Gibt es eine einfache Methode,
herauszufinden, ob ein AVR überhaupt läuft (Multimeter vorausgesetzt)?

Vielen Dank für Eure Tips,
  Daniel

von Daniel M. (diodan)


Lesenswert?

Nachtrag: Hat sich erledigt - eine Lötstelle war beschädigt.

von Marko (Gast)


Lesenswert?

die LED-brennt-brenntnicht Methode ist so ziemlich die
einfachste methode auf Funktionskontrolle.

Du kannst aber auch mal probieren

nen Port auf

&B01010101

zu setzen, dann solltest Du auf dem Port eben abwechselnd
H und L Pegel haben.

Ist das nicht der Fall läuft er nicht.

Am STK nen Quarz gesteckt? Fuses richtig auf internal RC gesetzt?
Sind dann  die häufigsten Fehlerquellen

von Hannes L. (hannes)


Lesenswert?

Auch wenn das Problem beseitigt ist könnten einige Tips helfen:

Der Kondensator an Reset ist bei neueren AVRs nicht nötig. Wichtig sind
Abblock-Kondensatoren (100nF Keramik) direkt an allen
Stromversorgungsanschlüssen. AGND und AVCC müssen auch angeschlossen
werden, siehe Datenblatt.
Auch der 7805 benötigt zur Unterdrückung von Schwingneigung
100nF-Keramik-Kondensatoren am Eingang und Ausgang.

Bei ATMEL (und auf der STK500-CD) gibt es neben den Datenblättern auch
noch sehr lesenswerte ApplikationsNotes. Da ist auch (mindestens) eine
zum Thema Grundbeschaltung des AVRs dabei.

...

von elvis (Gast)


Lesenswert?

Wie heißt die Application Note? Kann sie nicht finden!

von johnny.m (Gast)


Lesenswert?

BTW: Wenn Du AVCC nicht anschließt, kannst Du die ADC-Eingangspins
PORTC3..0 nicht verwenden, da diese von AVCC versorgt werden!

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.