delaware
20.01.2010, 12:03
Hallo,
ich beschäftige mich seit letzter Woche mit der Prog. von Atmel´s.
Zuerst mit Assembler und seit gestern mit C.
Habe jetzt erst mal verschiedene Lauflichter programmiert.
Mit folgenden Abfragen kann ich die LED´s auf dem STK500 invertieren :(ist nur ein Ausschnitt des ganzen Programms)
if (!(PINB & (1<<PINB0))) (d=0xff); //für die Invertierung von c/PORTD
if (!(PINB & (1<<PINB1))) (d=0x00); //für die Invertierung von c/PORTD
c ^= d; //c invertieren
PORTD = c; // c in PORTD ausgeben
------------------------------
Wobei c der Zähler(a) ist welcher durchgereicht wird c=(a<<=1)
Der Hex Code ist dann ca. 162byte lang.
Wenn ich folgende Zeile hinzufüge :
if (!(PINB & (1<<PINB2))) (t=5); //Geschwindigkeit des Lauflichtes
wird der hex Code 3766 bytes lang !!!
Warum denn das ?
christoph
[/scroll]
ich beschäftige mich seit letzter Woche mit der Prog. von Atmel´s.
Zuerst mit Assembler und seit gestern mit C.
Habe jetzt erst mal verschiedene Lauflichter programmiert.
Mit folgenden Abfragen kann ich die LED´s auf dem STK500 invertieren :(ist nur ein Ausschnitt des ganzen Programms)
if (!(PINB & (1<<PINB0))) (d=0xff); //für die Invertierung von c/PORTD
if (!(PINB & (1<<PINB1))) (d=0x00); //für die Invertierung von c/PORTD
c ^= d; //c invertieren
PORTD = c; // c in PORTD ausgeben
------------------------------
Wobei c der Zähler(a) ist welcher durchgereicht wird c=(a<<=1)
Der Hex Code ist dann ca. 162byte lang.
Wenn ich folgende Zeile hinzufüge :
if (!(PINB & (1<<PINB2))) (t=5); //Geschwindigkeit des Lauflichtes
wird der hex Code 3766 bytes lang !!!
Warum denn das ?
christoph
[/scroll]