Hallo Community,
ich bin neu hier und erst seit einigen Wochen in die AVR-Programmierung in C eingestiegen. Aus diesem Grund ist das alles ziemlich neu für mich. Seit bitte nicht zu hart mit mir wenn ich in sämtliche Fettnäpchen trete 
Ich versuche mich zur Zeit an einem Schieberegister Baustein
http://www.produktinfo.conrad.com/da...595B1R_STM.pdf
mit einem ATmega8 anzusteuern. Hier der Code:
Code:
while(1)
{
uint8_t Wert;
PORTD |= (1<<PORT_SCLR);
for (int i = 8; i > 0; i--)
{
PORTD &=~ (1<<PORT_SER);
if (Wert & 0x80)
{
PORTD |= (1<<PORT_SER);
}
Wert <<= 1;
PORTD &=~ (1<<PORT_SCK);
PORTD |= (1<<PORT_SCK);
}
PORTD &=~ (1<<PORT_RCK);
PORTD |= (1<<PORT_RCK);
PORTD &=~ (1<<PORT_SCLR);
Was mir an dem Ganzen zur Zeit ein wenig unklar ist:
1. Wenn ich uint8_t Wert; vor der while-Schleife anlege, erkennt der Baustein die Variable Wert nicht und tut nichts, warum???
2. Wie kann ich die Variable Wert verändern??? Wenn ich nach diesem Programmcode ein Wert++; hinzufüge, bleibt die Variable bei ihrem vordefinierten Wert und ändert sich nicht!!!
Vielen Dank im Voraus !!!
Lesezeichen