微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > HalUARTWrite()函数输出一个参数,串口显示乱码输出

HalUARTWrite()函数输出一个参数,串口显示乱码输出

时间:10-02 整理:3721RD 点击:

串口输出一个参数,用HalUARTWrite这个函数,但输出显示是乱码,用十六进制显示输出,发送输出的是16进制的数据,但显示成十进制后就是乱码了。 但用 LCD_WRITE_STRING_VALUE() 这个函数就能正常显示出数字来?什么原因?

uint8 data[3]={0};

data[0]=sec; data[1]=min;

data[2]=hour;

 HalUARTWrite(HAL_UART_PORT_0,data,3);

 LCD_WRITE_STRING_VALUE( "sec:", sec, 10, HAL_LCD_LINE_1 );

 LCD_WRITE_STRING_VALUE( "min:", min, 10, HAL_LCD_LINE_1 );

 LCD_WRITE_STRING_VALUE( "hour:", hour, 10, HAL_LCD_LINE_1 );

请问显示乱码是指接线到PC上使用串口调试的工具显示的吗?

如果是,要检查一下串口波特率的配置是否正确

如果不是,是什么地方显示的呢?

算下波特率吧,用示波器量一下就更直接了。

WBJ,你好,是PC显示的。

但估计不是串口波特率的问题,如果这个设置有问题的话, LCD_WRITE_STRING_VALUE这个也会显示乱码的,都是串口输出的。

LCD_WRITE_STRING_VALUE这个是把数值打到LCD上,LCD用的是SPI口

且这个SPI口和UART口肯定不是一个PIN

使用sprintf(data,"%u%u%u",sec,min,hour);转换再串口写。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top