Gast
#789053
Hi, mache gerade meine ersten Schritte mit WINARM + LPC2148. Ich habe folgendes Hauptprogramm: int main(void) { … uart_Puts("test\r\n"); print_int(1245); while(1); { /*FIO0SET = ( 1<<11); // Pin 11 auf HIGH schalten f = sinf(1.6); f *= 100; print_int((int) f); FIO0CLR = ( 1<<11); // Pin 11 auf low schalten for (x=0; x<1000000; x++) { asm("nop"); }*/ return (1); } Wenn ich alles mit 0 Optimiere funktioniert alles bestens. Bei s Optimierung habe ich bei einer leeren Endlosschleife (wie oben) ein komisches Verhalten: print_int(1245) wird nicht einmal ausgeführt sonder ständig. Dann kommt es zum Überlauf meines UART Puffers Erst wenn ich wieder den auskommentierten Code in der while Schleife aktiviere, funktioniert wieder alles einwandfrei mit s Optimierung. Bei 0 Optimiere funktioniert es einwandfrei egal ob leere while Schleife oder nicht. Hat jemand eine Idee woran das liegen könnte? Gruß Bernd