本帖最后由 woshiludinghua 于 2016-7-3 23:26 编辑
最近使用sprint函数打印小数并输出,写了下面的函数,但是没法输出小数,可以输出整数,不知为何原因,请大师指点
char num[64]= {0};
void send_string_to_uart( char* char_point)//将字符送到串口
{
do
{
while((UART1_SR&CHSBIT7)==0x00);
UART1_DR = *char_point++;
}while(*char_point);
while((UART1_SR&CHSBIT7)==0x00);
UART1_DR = '
';
while((UART1_SR&CHSBIT7)==0x00);
UART1_DR = '
';
}
void main(void)
{
External_Hign_Speed_ClockInit();//STM8外部时钟初始化
UART1_Init();//串口初始化
while(1)
{
sprintf((char*)num, "%4.2f", 3.14);//?????????这里写法不对吗
send_string_to_uart(num);//将字符输到串口调试助手显示
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>