die erste funktion habe ich mal hinbekommen
nur mich interessiert jetzt wirklich wieso es beim ersten programm läuft und beim zweiten nicht.
mit breakpoints kenne ich mich nicht aus.
2.tesCode:#define eins 500 void softdelay(); void erste(); static unsigned int patt1=0x0001; void main(void) { DP2= 0xFFFF; while(1) { int i=0; for(i=0; i<=1000; i++) { if(eins%i) erste(); softdelay(); } } } void erste(void) { if (patt1<=0x0070) patt1= patt1<<1; else patt1=0x0001; P2=patt1; } void softdelay() { unsigned long j=0; for (j=0; j<500000; j++) {}; }
Code:#define eins 500 void softdelay(); void erste(); void main(void) { DP2= 0xFFFF; while(1) { int i=0; for(i=0; i<=1000; i++) { if(eins%i) erste(); softdelay(); } } } void erste(void) { if (P2<=0x0070) P2= P2<<1; else P2=0x0001; } void softdelay() { unsigned long j=0; for (j=0; j<500000; j++) {}; }







Zitieren

Lesezeichen