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; }
Hüseyin Aydingünes schrieb: > - "lvalue required as left operand of assignment" Vielleicht verrätst du uns auch noch, in welcher Zeile der Fehler auftritt. Oliver
Ich rate mal: Zeile 42! (Tatsächlich ists ab Zeile 41.. schade, hätte fast gepasst). > #define A0 (1<<PINB0) [..] > A0 = TRUE; So wird das nix, versuchs mal mit PORTB |= A0; HTH
Davon abgesehen, dass "PIN" für die Abfrage von Eingängen dient.
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.