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
:
Gesperrt durch User
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.