Fehler im Programm (Grundlagen mC Programmierung)

OP #1721051
Lesenswert?

Hallo Zusammen,

unter diesem CODE kriege ich diese Fehlermeldung:
- "lvalue required as left operand of assignment"

Wo liegt der Fehler???

Danke im vorraus!

husox81



#include <avr/io.h>


// Definitionen E/A
#define EINGANG      PORTA
#define E0        (1<<PA0)
#define E1        (1<<PA1)
#define E2        (1<<PA2)
#define E3        (1<<PA3)
#define E4        (1<<PA4)
#define E5        (1<<PA5)
#define E6        (1<<PA6)
#define E7        (1<<PA7)

#define AUSGANG      PORTB
#define A0        (1<<PINB0)
#define A1        (1<<PINB1)
#define A2        (1<<PINB2)
#define A3        (1<<PINB3)
#define A4        (1<<PINB4)
#define A5        (1<<PINB5)
#define A6        (1<<PINB6)
#define A7        (1<<PINB7)

// Definitionen Befehle
#define FALSE      0
#define TRUE      1

// Hauptprogramm
int main (void)
{

  DDRA   = 0x00;
  DDRB   = 0xff;
  PORTB   = 0xff;

     while(1)
     {
       if (E0 == TRUE)
    {
      A0 = TRUE;
    }

    else if (E0 == FALSE)
    {
      A0 = FALSE;
    }
     }


     return 0;
}
#1721072
Lesenswert?

Du willst hier den Zustand des Ports abfragen der natürlich  als Eingang 
geschaltet sein sollte.
In deinem Code versuchst du allerdings
(1<<PINB0) den Wert 1 zu zuweisen.
Was natürlich nicht geht.

Falls du aber ihn als Ausgang nutzen willst ist (1<<PINB0) die faschle 
Wahl, dafür ist (1 << PB0) zuständig

Grüße

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