Danke, werde ich mir mal anschauen! =)
So habe folgendes Problem, habe ein Lauflich Programmiert.
folgende Fehler treten auf:
Ich hab für meine verschiedenen LEDs Arrays verwendet und wenn die for-Schleife das Array 7 werden LED 4-8 angeschaltet und nicht LED 8 alleine wie es sein sollte, wenn ich, dann aber nur bis Array 6 laufen lasse funktioniert das ohne Probleme! Wo ist mein Fehler? Ich find den einfach nicht.
Dann ein weiteres Problem, die folgende for-Schleife. Die wird immer übersprungen, und ich hab auch keine Ahnung wieso! Was mache ich da falsch, die ist doch wie jede andere for-Schleife auch! Oder übersehe ich da mal wieder was?
Code:
#include <avr/io.h>
uint8_t led[7];
uint8_t zaehler;
uint8_t zaehler2;
uint8_t endlos;
uint8_t wait0;
uint8_t wait1;
uint8_t wait2;
void warte()
{
for(wait0 = 0; wait0 <= 254; wait0 = wait0 + 1)
{
for (wait1 = 0; wait1 <= 254; wait1 = wait1 + 1)
{
for(wait2 = 0; wait2 <= 5; wait2 = wait2 + 1)
{
}
}
}
}
int main()
{
//Array Felder konfigurieren
led[0] = 0b11111110;
led[1] = 0b11111101;
led[2] = 0b11111011;
led[3] = 0b11110111;
led[4] = 0b11101111;
led[5] = 0b11011111;
led[6] = 0b10111111;
led[7] = 0b01111111;
DDRB = 0xFF; //PORTB als Ausgang
PORTB = 0xFF;
for(endlos = 1; endlos <= 2; endlos = endlos + 1)
{
PORTB = 0xFF;
for(zaehler = 0; zaehler <= 6; zaehler = zaehler + 1)
{
PORTB = led[zaehler];
}
for(zaehler2 = 6; zaehler2 ==1; zaehler2 = zaehler2 - 1)
{
PORTB = led[zaehler2];
warte();
}
endlos = endlos - 1;
}
return 0;
}
Lesezeichen