Fehler im OS?? Kategorie: Progr. Assembler, TaskingTools, OS (von Michael - 28.01.2005 21:51) | ||
| ||
Hallo Leute, bei mir bleibt absolut reproduzierbar die CC2 stehen (OS=V3.0) wenn ich eine float variable auf eine int variable zuweise. Allerdings "spinnt" die str.putintf funktion vorher schon rum. Es geht hier nur um simple Operationen = shl math.log math.floor Hier mein Code float b; int b_i; string HWCOM_Text; hwcom.init(); hwcom.setspeed(hwcom.SPEED_57600); // clear output screen hwcom.clr(); loop { a = 0xFF; wait hwcom.ready(); HWCOM_Text = "a1 = "; str.putintf(HWCOM_Text,a,-4); hwcom.print(HWCOM_Text); wait hwcom.ready(); hwcom.ret(); a = a or (0xFF shl 8); wait hwcom.ready(); HWCOM_Text = "a2 = "; str.putintf(HWCOM_Text,a,-4); hwcom.print(HWCOM_Text); wait hwcom.ready(); hwcom.ret(); b = math.log(a); wait hwcom.ready(); HWCOM_Text = "OK 1"; hwcom.print(HWCOM_Text); wait hwcom.ready(); hwcom.ret(); b_i = math.floor(b + 0.5); wait hwcom.ready(); HWCOM_Text = "OK 2"; hwcom.print(HWCOM_Text); wait hwcom.ready(); hwcom.ret(); sleep 1000; } } Und hier die Ausgabe: a1=0x00FF <b>a2=0xFFFFFF</b> OK 1 <b>?????</b> Tja und nun ist Schlu� OK 2 kommt nicht mehr Die CC2 steht und wartet auf einen Reset. 1. Warum kommt eine 6-stellige HEX-Zahl wenn nur eine 4-Stellige kommen darf? 2. Warum bleibt das Programm hängen? 3. Das alles passiert nur, wenn ich alle bits der integerzahl auf 1 setze. Also mit 7FFF geht alles. Hat einer eine Idee. Danke Michael | ||
Antwort schreiben Antworten: Kein Fehler. Ungültiger Parameter ! (von André H. - 30.01.2005 23:52) |