AT90S4433 -> PORTC/PINC

Gast #109332
Hallo,

an PORTD sind Taster, an PORTB sind LED's (gegen Masse).

Das folgende Programm funktioniert auch:

//-------------------
#include <avr/io.h>

int main(void)
{
  DDRB  = 0xFF;
  PORTB = 0x00;

  DDRD  = 0x00;
  PORTD = 0xFF;

  for(;;)
      PORTB = ~PIND;
}
//-------------------

Wird eine Taste gedrückt, leuchted die korrespondierende
LED.

Wenn ich jetzt aber statt PORTD den PORTC verwende:

//-------------------
#include <avr/io.h>

int main(void)
{
  DDRB  = 0xFF;
  PORTB = 0x00;

  DDRC  = 0x00;
  PORTC = 0xFF;

  for(;;)
      PORTB = ~PINC;
}
//-------------------

dann werden alle LED's eingeschaltet und kein
Tastendruck ausgewertet.

Spielt mir hier vielleicht der ADC einen Streich?
Muss man den ADC explizit ausschalten?

Ich dachte, man kann alle Ports prinzipiell als
digitale I/O's verwenden und wenn man was Spezielles
machen will, muss das extra konfiguriert werden.

Joline
Gast
Also wenn ich das richtig lese, benötigt man AVCC/AGND nur wenn man den
ADC benutzen will. Aber genau das will ich ja nicht, sondern ich
brauche nur digitale Eingänge.
Gast
Lustigerweise steht im Datenblatt:

"AVCC is the supply voltage for Port A and the A/D Converter. If the
ADC is not used, this pin must be connected to VCC. If the ADC is used,
this pin should be connected to VCC via a low-pass filter."

Es soll doch aber Port C, und nicht Port A verwendet werden :-)

Aber egal, man sollte an AVCC tatsächlich die Betriebsspannung (und an
AGND auch GND) anschließen, "Port A" dürfte nur ein Druckfehler sein,
oder?

Gruß
Ingo

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.