ATMega32 initialisieren

Gast #362327
Lesenswert?
• ▲
▼
Hi @ all

Ich habe einen ATMega32 und verwende den Open Source Compiler, der in
Tutorial empfohlen wird. Nun zu meiner Frage:

1. Ich möchte 29 von 32 Ports verwenden. Wie muss ich die
Initialisierung machen, damit es keine Probleme mit der Doppelbelegung
der Ports gibt? (Die Ports können z.B. für AD-Wandler und RS232
verwendet werden, dies möchte ich aber nicht) Ich weiß, das man mit dem
Datenrichtungsregister die Richtung festlegt, gibt es aber noch andere
Register, die ich einstellen muss, damit es ganz "normal Ports" sind,
über die ich Signale ausgeben und einlesen kann?

Grüsse

Michael
Gast #362328
Lesenswert?
• ▲
▼
>gibt es aber noch andere Register

ja, aber wenn du die Ports nur als IO-Pins benutzen willst, brauchst du
dich darum nicht kümmern.
Schon mal die Tutorien hier auf der Seite angeguckt?
Gast #362329
Lesenswert?
• ▲
▼
Das hängt von den jeweiligen Ports ab. Wenn sie für bestimmte Funktionen
  vorgesehen sind musst du diese erst deaktivieren bevor du sie als
normale Ports nutzen kannst. Ein Beispiel: Wenn das JTAG interface
enabled ist, kannst du die Pins PC5,PC3 und PC2 nicht als normale
Ausgänge nutzen. Um dies zu tun musst du erst das JTAG interface
disablen. Es gibt auch noch andere Pins bei denen man aufpassen muss.
Das steht alles im Datanblatt des Atmega32. Guck es dir mal an :)

Gruß,

Marian
Gast #362330
Lesenswert?
• ▲
▼
Das JTAG-Interface ist die einzige Hardware-Komponente beim Mega32, die
defaultmäßig aktiv ist und Pins belegt. Das JTAG-Interface muss also
erst (durch entsprechendes Setzen der Fuses) deaktiviert werden, um die
Pins an Port C zur allgemeinen Nutzung freizugeben. Alle Pins sind
General Purpose I/Os, die zur allgemeinen Verfügung stehen, solange
nicht eine Hardware-Komponente auf sie zugreift. Wenn die
Hardware-Komponenten (z.B. USART) nicht aktiviert werden, gibt es da
auch keine Probleme.

Kleine Begriffserklärung:
Ein Port ist nicht gleich einem Portpin! Der Mega32 hat 4 8-Bit-Ports
mit insgesamt 4*8 = 32 Portpins.
Gast #362331
Lesenswert?
• ▲
▼
Oh schon mal danke. Habe die Leitungen vom JTAG-Interface mit
verwendetet. Bis jetzt habe ich vor den µP über SPI zu programmieren.
Gehört der SPI auch zu den Portpins, die deaktiviert werden müssen,
damit sie als "normale Portpins" verwendet werden können?
Gast #362332
Lesenswert?
• ▲
▼
Nein, eigentlich nicht. Man muss nur darauf achten, dass an diesen Pins
nichts angeschlossen wird, was das Programmieren stören kann (z.B.
keine LEDs o.ä., Taster sind hingegen i.d.R. kein Problem). Wenn es
nicht anders geht, dann muss man dafür sorgen, dass die angeschlossenen
Komponenten zumindest beim Programmieren abgeklemmt werden können (z.B.
durch Jumper).

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.