Forum: Programmieren allgemein
by Gehstock,
15. Mär 2009
Danke schau ich mir mal an hab ja erst angefangen damit zu spielen
Forum: Programmieren allgemein
by Gehstock,
15. Mär 2009
ja hatte ich unterdessen auch geändert Problem ist jetzt noch das der Taster manchmal mehrere sekunden gehalten werden muss bevor die LED angeht bzw. i erhöht wird und nach dem lösen die LED wieder für mehrere sekunden brennnt
ich hab fast das Gefühl das die CPU überlastet ist weil die Dauer je nach Aufwand für den Effekt variiert
Forum: Programmieren allgemein
by Gehstock,
15. Mär 2009
Habs jetzt so geändert tut auch fast was es soll
int main (void)
{
int i = 0;
ioinit();
bootmsg();
current_layer = 0x00;// Bei unterster Ebene starten
sei();
while (1)// Haupt programm loop.
Forum: Programmieren allgemein
by Gehstock,
13. Mär 2009
Soll eigendlich nichts anderes tun wie schon in den Kommentaren erwähnt
Programm soll bei effekt 0 Starten und das solange bis
-button an PB3 gedrückt wird (LOW weil gegen GND?)
dann
-soll kurz die LED an PB1 Leuchten
- i um eins erhöht werden (wenn i = 15 ist dann wieder zurück zu 0)
und dann wieder der Effekt(i) in einer schleife ablaufen bis der Button erneut betätigt wird
Forum: Programmieren allgemein
by Gehstock,
13. Mär 2009
DDRB = (1 << DDB1); // PB1 als Ausgang
DDRB &= ~(1 << DDB3); // PB3 als Eingang
// while PORTB = ~(1<<PB3); // wenn low
if (!(PINB & (1 << PB3))) // wenn PB3 geschlossen (HIGH)
{
PORTB = PORTB | (1 << DDB1); //dann LED and PB1 An
i++; //i um 1 erhöhen
if (i = 15) i =0; //wenn i = 15 dann i = 0
while (1) // solange Button nicht gedrückt...