S
stygops
Guest
bonjour,im trying to send a float number from 89s8252 to pc via serial, using the term232 I can see the number that i was sended in th ecomputer, but this is not complete.. ex:
i send 98624.8736 et je reçois 95624.8800 ...
Pourquoi ce lieu??
mon code est en C.
void main (void)
(
float conta = 0;
CONT unsigned char;
bit buffer [40];
SCON = 0x50; / * SCON: mode 1, 8-bit UART, permettre RCVR * /
TMOD | = 0x20; / * TMOD: timer 1, mode 2, 8-bit recharger * /
TH1 = 0xfd; / * TH1: valeur pour la recharge de 9600 bauds * /
TR1 = 1; / * TR1: timer 1 run * /
TI = 1; / * TI: set TI pour envoyer premier caractère d'UART * /
conta = 98624.8736;
sprintf (buffer, "% .4 f \ 0", conta);
(
while (buffer [suite]! = 0x00)
(
putchar (buffer [suite]);
cont ;
)
while (1) ()
)
)
bien merci, mauvais anglais désolé: p
i send 98624.8736 et je reçois 95624.8800 ...
Pourquoi ce lieu??
mon code est en C.
void main (void)
(
float conta = 0;
CONT unsigned char;
bit buffer [40];
SCON = 0x50; / * SCON: mode 1, 8-bit UART, permettre RCVR * /
TMOD | = 0x20; / * TMOD: timer 1, mode 2, 8-bit recharger * /
TH1 = 0xfd; / * TH1: valeur pour la recharge de 9600 bauds * /
TR1 = 1; / * TR1: timer 1 run * /
TI = 1; / * TI: set TI pour envoyer premier caractère d'UART * /
conta = 98624.8736;
sprintf (buffer, "% .4 f \ 0", conta);
(
while (buffer [suite]! = 0x00)
(
putchar (buffer [suite]);
cont ;
)
while (1) ()
)
)
bien merci, mauvais anglais désolé: p