Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Michael, > > > bei mir bleibt absolut reproduzierbar die CC2 stehen (OS=V3.0) wenn ich eine <code>float</code> variable auf eine > > <code>int</code> variable zuweise. Allerdings "spinnt" die <code>str.putintf</code> funktion vorher > > schon rum. > > Hier spinnt garnichts. > Der Fehler liegt in Deinen Routinen: > <code> > > a = 0xFF; > > ... > > a = a or (0xFF shl 8); > > ... > > b = math.log(a); > > </code> > > a ist hier -1. > Bei einem Logarithmus muß der Parameter größer 0 sein. > Alles andere sind ungültige Werte. > Da es beim Logarithmus um eine Float-Funktion handelt, endet das > ganze in einer OS-Fehlermeldung. > Wenn Du die HOST-LED ansehen würdest, könntest Du folgende Blinkfolge erkennen: > 1x lang, 7x kurz > Dies steht für "FPE INOF", was wiederum "Floating Point Error Integer Overflow" heißt. > Die Ursache dafür ist, wie gesagt, Dein Parameter -1. > > Leider erzeugt nicht dies selbst den Fehler, sondern erst in der Zeile > <code>b_i = math.floor(b + 0.5);</code> > , als ein Float-Rückgabewert einer Integervariable zugewiesen werden soll. > > > > Die CC2 steht und wartet auf einen Reset. > > Es ist aber kein Absturz, sondern ein vom OS abgefangener Fehler. > Zu sehen an dem Blinkcode der Host-LED bei OSOPT V3.0 . > > > > 1. Warum kommt eine 6-stellige HEX-Zahl wenn nur eine 4-Stellige kommen darf? > > Das ist eine Folge der ungültigen Mathematischen Operation mit math.log(). > > > 2. Warum bleibt das Programm hängen? > > siehe oben. > > > 3. Das alles passiert nur, wenn ich alle bits der integerzahl auf 1 setze. Also mit 7FFF geht alles. > > siehe auch oben. > Den Logarithmus kann man nur aus positiven Zahlen berechnen. > Und das ist Mathematik und kein Fehler. > > MfG André H.