Beispiel #1
0
void fix16ToStr(fix16 value, char *str, s16 numdec)
{
    u32 len;
    fix16 v;
    u32 frac;
    u8 strFrac[8];

    len = 0;

    if (value < 0)
    {
        v = -value;
        str[len++] = '-';
    }
    else v = value;

    len += uintToStr_(fix16ToInt(v), &str[len], 1, 16);
    str[len++] = '.';

    // get fractional part
    frac = fix16Frac(v) * 1000;
    frac /= 1 << FIX16_FRAC_BITS;

    // get fractional string
    uintToStr(frac, strFrac, 3);

    if (numdec >= 3) strcpy(&str[len], strFrac);
    else strncpy(&str[len], strFrac, numdec);
}
Beispiel #2
0
void fix32ToStr(fix32 value, char *str, s16 numdec)
{
    u32 len;
    fix32 v;

    len = 0;
    if (value < 0)
    {
        v = -value;
        str[len++] = '-';
    }
    else v = value;

    len += uintToStr_(fix32ToInt(v), &str[len], 1, 16);
    str[len++] = '.';
    uintToStr_((fix32Frac(v) * 1000) / (1 << FIX32_FRAC_BITS), &str[len], 1, numdec);
}
Beispiel #3
0
void intToStr(s32 value, char *str, s16 minsize)
{
    u32 v;
    char *dst = str;

    if (value < 0)
    {
        v = -value;
        *dst++ = '-';
    }
    else v = value;

    uintToStr_(v, dst, minsize, 16);
}
Beispiel #4
0
void uintToStr(u32 value, char *str, s16 minsize)
{
    uintToStr_(value, str, minsize, 16);
}