-
1. Data: 2010-08-24 15:38:02
Temat: sprintf
Od: Mario <m...@p...onet.pl>
Witam.
tworzę sobie łańcuch przy pomocy funkcji sprintf celem wysłania go przez
interfejs szeregowy.
case 1:
{
sprintf(cOutBuff,"N4=%d;%d;%d",ulCount4,usBridgeSign
alValue,usBridgePhaseValue);
// sprintf(cOutBuff,"%s","N4=12345;9876;1234");
break;
zmienne są typu unsigned short. No i od czasu do czasu losowo coś się
zacina np po 20 albo po 150 transmisjach. Jeśli zamiast tej linii dam tę
zakomentowaną to wszystko chodzi dobrze czyli stale wysyła ten ciąg
znaków. Jeśli zamienię %d na %s to program chodzi ale oczywiście wysyła
robaczki zamiast ciągów cyfr. Czyli tak jakby wysypywała się konwersja z
int na ascii wymuszona parametrem %d. Czy ktoś wie czemu? Pewnie mógłbym
to zastąpić funkcją itoa ale żal mi rezygnować ze zwięzłego zapisu.
Programik jest na ARMa pod Freertosem.
--
Pozdrawiam
MD