www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 20x4 LCD am Atmega16: Welche Ports?


Autor: Sergej M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Ich bin ein Anfänger und möchte ein Display am Atmega16 in 4bit-Modus 
ansteuern und habe gleich hier im AVR-Tutorial nachgelesen wie das geht.
Doch sind bei mir die Ports PD2 & PD3 für zwei Interrupts besetzt. Im 
Tutorial sind die aber für das Display empfohlen.

Kann ich stattdessen beliebige Ports verwenden?
Ich würde gerne die Ports PB oder PC nehmen. Wird das gehen?

Zweite Frage:
Kann ich stattdessen auch einfach die Interrupts auf andere Ports 
setzen?
Im Datenblatt steht nämlich dass PD2 & PD3 unter anderem für externe 
Interrupts da sind, wesshalb ich sie auch dafür benutze.

Vielen Dank

Autor: Stefan B. (stefan) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Kannst du machen.

Bei PORTB musst du auf die ISP Schnittstelle aufpassen. Schau dir die 
Appnote 'AVR042: AVR Hardware Design Considerations' von Atmel an.

Bei PORTC musst du auf die JTAG Schnittstelle aufpassen und per [[AVR 
Fuses]] abschalten.

Wenn dein Programm INT0 und INT1 benutzt, sind die an PD2 und PD3 
gebunden. Die kannst du nicht hardwaremäßig verlegen.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sergej M. schrieb:
> Hallo,
> Ich bin ein Anfänger und möchte ein Display am Atmega16 in 4bit-Modus
> ansteuern und habe gleich hier im AVR-Tutorial nachgelesen wie das geht.
> Doch sind bei mir die Ports PD2 & PD3 für zwei Interrupts besetzt. Im
> Tutorial sind die aber für das Display empfohlen.

Empfohlen ist das falsche Wort.
Irgendeinen Port muss man nehmen. Also warum nicht Port D?

> Kann ich stattdessen beliebige Ports verwenden?

Ja klar.
Ein LCD ist ja nicht auf bestimmte Spezialfunktionalität angewiesen. Und 
Bitklimpern (gezielt auf 0 oder 1 setzen) kann man mit jedem Port.

> Ich würde gerne die Ports PB oder PC nehmen. Wird das gehen?

Bei C aufpassen: JTAGEN per Fuse abschalten.

> Kann ich stattdessen auch einfach die Interrupts auf andere Ports
> setzen?

Nein.
Wenn ein Portbit Spezialfunktionalität hat, dann ist man an genau diesen 
Pin gebunden, wenn man diese Funktionalität benutzen will.

Autor: Sergej E. (sergej_m)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für Eure schnellen Antworten, Stefan und Karl.

Das ist genau das, was ich wissen wollte.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.