Habs jetzt mit utoa geschaft aber da habe ich noch ein Problem:
Der Code
Code:
#include "asuro.h"
#include "stdlib.h"
int main(void)
{
unsigned int LANG = 0;
char aC[2];
int t=0,a=0;
Init();
StatusLED (GREEN);
while (1)
{
a=a+2;
if (a > 20)
LANG++; //Verzögerung des Zählers
if (a > 20)
a=0;
utoa (LANG, aC, 5); //Umwandeln von int auf char
SerWrite (aC, 2); //Übertragen ins Hyper Terminal
SerWrite ("=VAR\n\r", 6);
for (t=0; t< 40; t++) //Kurze Pause beim Übertragen
{Sleep (72);}
if ((LANG > 0) && (LANG < 5))
{BackLED(OFF,OFF);
StatusLED(RED);}
if ((LANG > 5) && (LANG < 10))
{BackLED(ON,ON);
StatusLED(GREEN);}
if (LANG > 9)
LANG = 0;
}
return 0;
}
Wenn ich utoa mit diesem Teil ersetzte
sprintf(aC, "%d", LANG);
SerWrite(aC, 2);
SerWrite (" aC\n\r", 5);
funktioniert alles.
Wenn ich utoa nehme nicht
Das sehe ich im Hyper Terminal
Code:
3=VAR
3=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR
4=VAR //Wieso?
10=VAR //Wieso von 4 auf 10
10=VAR
keine Ahnung wieso er von 4 auf 10 springt
Lg
Lesezeichen