Hallo, kann mir jemand sagen warum ich eine Fehlermeldung bekomme, wenn ich in C einen Port setzen oder rücksetzen möchte. Der Befehl PORTB3=1; müsste doch eigentlich funktionieren. Der Compiler gibt aber die Fehlermeldung "error: lvalue required as left operand of assignment" aus. Kann ich nicht einzelne Bits setzen und rücksetzen? Ich arbeite mit AVR Studio 4.14 und WINAVR. Gruß Matze
Also diese Art einen Pin zu setzen ist mir unter WinAVR eigentlich gänzlich unbekannt. Normal funktionierts so:
1 | PORTB |= (1 << PB6); // Setzen |
2 | PORTB &= ~(1 << PB6); // Rücksetzen |
MfG Marius
Jo, C sollte man schon können... Ansonsten ist dieses Post absolut unnötig... Wer lesen kann.... http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
Wenn ich das jetzt im STK 500 realisieren möchte, wie gehe ich dann mit der Invertierung vor? mfg Basti
Basti schrieb: > Wenn ich das jetzt im STK 500 realisieren möchte, wie gehe ich dann mit > der Invertierung vor? Was meinst du? Möchtest du den STK 500 invertieren?
Basti schrieb: > Wenn ich das jetzt im STK 500 realisieren möchte, wie gehe ich dann mit > der Invertierung vor? Bitte grab keine himmelalten Threads aus! Bitmanipulation AVR-GCC-Tutorial das sollte fürs erste alle Fragen klären. Die Antwort auf damit nicht geklärte Fragen finden sich entweder in jedem Einsteiger-C-Buch oder bei nicht trivialen Fragen zur Progrqammiersprache, hier im Forum.