//cnt = _vsnprintf((char *)buffer,bufsize , fmt,argptr);
if(sizeof(fmt) < bufsize)
cnt = _vsprintf(buffer, fmt,argptr);
else
return;
ptr = buffer;
while(*ptr)
{
TXCMD(*ptr++); //实现字符串口输出
}
va_end(argptr);
return(cnt);
}
main()
{
char temp = 0;
EA = 1; // Enable global interrupts
MBSerial();
for(;;)
{
Delayms(50);
printf51("temp = %X\r\n",temp);
printf51("ok!\r\n");
if(temp <127)
{
temp++;
}
else
temp = 0;
}
}
pc机超级终端显示为:
oktemp = 1000
ok!
temp = 1100
ok!
temp = 1200
ok!
temp = 1300
ok!
temp = 1400
ok!
temp = 1500
ok!
temp = 1600
ok!
temp = 1700
ok!
temp = 1800
ok!
temp = 1900
ok!
temp = 1A00
ok!
temp = 1B00
ok!
temp = 1C00
.
.
.
.
temp = 7F00
ok!
为什莫数据左移了8位?