AVR Atmega32 Probleme Eingang abfragen

Gast #2935069
Lesenswert?

Hallo zusammen,

ich habe ein Problem. Ich möchte einfach nur einen Eingang abfragen und 
demensprechend Ausgänge setzen bzw. rücksetzen. In der Simulation klappt 
das alles ganz gut nur wenn ich es auf den µC lade reagiert er garnicht 
auf den Eingang.

Ich schätze das es ein simples Problem ist und ihr mir vielleicht 
weiterhelfen könnt!

Ich benutze einen AVR Atmega32. Das Programm hab ich mal angehangen, ist 
nicht so spektakulär ;)
Angehängte Dateien:
Gast #2935079
Lesenswert?

Ich habe keine Ahnung von C

Aber könnte der Fehler hier stecken?
1
DDRD = 0x00;  //Alle bits von PORTD als Eingang deklarieren
2
PORTD = 0xff;  // Alle Bits von PORTC auf 0 setzen
3
DDRC = 0x00;  //PORTC als Eingang

Wo setzt du ein Ausgang?
Und warum den Port C löschen bevor er deklariert ist.

Aber wie getippt ich habe von C keine Ahnung. Ich liebe Asembler :-)
#2936289
Lesenswert?

Du musst dich irgendwann mal entscheiden, was in deiner SChaltung 
eigentlich Eingang und Ausgang sein soll, und dann auch demenstprechend 
die Ports konfigurieren.

1
  DDRD = 0x00;    //Alle bits von PORTD als Eingang deklarieren
2
  DDRC = 0x00;  //PORTC als Eingang


Alles kann nicht Eingang sein. Ein paar Ausgänge wirst du auch brauchen.


Diesen (berechtigten) Einwand
Beitrag "Re: AVR Atmega32 Probleme Eingang abfragen"
hast du korrigiert?
#2936294
Lesenswert?

Und machs halt für den ersten Versuch nicht zu kompliziert
1
#include <avr/io.h>
2

3
int main(void)
4
{
5
  DDRD  = 0x00;
6
  PORTD = 0xff;
7
  DDRC  = 0xFF;
8

9
  while(1)
10
  {
11
    if ((PIND & 0x02))
12
      PORTC |= (1<<PINC5);
13
    else
14
      PORTC &= ~(1<<PINC5);
15
  }
16
}

das reicht schon fürs erste um zu sehen, ob sich überhaupt was tut.

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