使用STM8L052输出调试信息
重定向put char
#include "stdio.h" //必不可缺少
char putchar (char c)
{
/* Write a character to the USART */
USART_SendData8(USART1, c);
/* Loop until the end of transmission */
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
return (c);
}
输出字符串都没问题。
typedef struct
{
uint16_t time;
uint8_t cRssi;
}SysParam;
SysParam Sys;//定义了一个结构体数据
printf("hello world!");
当我输出数据时发现不对。
printf("rssi %drn",Sys.cRssi);
调试窗显示值是12,输出是确是3073
但是
printf("rssi %drn",Sys.time);
是正确的。
查了半天感觉应该是数据类型的问题。
printf("rssi %drn",(uint16_t)Sys.cRssi);
把uint8_t转为uint16_t输出就行了。
关键字:STVD printf输出 数据错误
引用地址:
STVD使用printf输出数据错误
推荐阅读最新更新时间:2024-11-08 14:59
51单片机的printf等格式输出函数
在51单片机上使用printf函数、sprintf函数要注意以下几点: 1. 无符号16位数格式符用%d或者%u,千万不能加字母“l”,否则会出错 2. 32位数据格式符必须加字母“l”,否则会出错 3. 8位数据格式符要加字母“b”,例如%bd、%bu等
[单片机]
STVD常见错误 找不到 stm8_interrupt_vector.c
#error cpstm8 stm8_interrupt_vector.c:0 can’t open stm8_interrupt_vector.c srccancan.c: Compiling srcappmain.c… cxstm8 +modsl +debug -pxp -no -pp -l -iinccommuni -iincqueue -iincpowermanage -iinclin -iinclib -iinckey -iincdrv -iincdef -iincdebug -iincconfig -iincclk -iinccan -iincapp -i C:Program FilesCOSMICCXSTM8
[单片机]
IAR STM8串口printf输出
IAR用printf输出与keil设置不太一样,首先当然先要包含头文件 stdio.h ,然后改写putchar函数 int putchar(int c) { while ((UART2_SR&0x80)==0x00); UART2_sendchar((u8)c); return (c); } 在Options中将Library Configuration改成Full 在Library Options中将Printf formatter改成Large即可。
[单片机]
STM32 上使用 printf 输出函数
如果要实现在串口 或者 LCD 上显示,必须重定义标准库函数里调用的与输出设备相关的函数。 如果使用 printf 输出到串口,需要将 fputc 里面的输出指向串口,这一过程就叫重定向。 那么如何让 STM32 使用 printf 函数呢?只需要将 fputc 里面的输 出指向 STM32 串口即可。 int fputc(int ch,FILE *p) //函数默认的,在使用 printf 函数时自动调用 { USART_SendData(USART1,(u8)ch); while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET); return ch;
[单片机]
STM8在STVD平台如何生成HEX文件的方法
1.工程设置中,Post-Build选项卡中,有如下设置 chex -o $(OutputPath)$(TargetSName).s19 $(OutputPath)$(TargetSName).sm8 这是生成*.s19文件的。 2.如欲生成HEX文件,设置如下: chex -fi -o $(OutputPath)$(TargetSName).hex $(OutputPath)$(TargetSName).sm8
[单片机]
点评:大数据技术应用十大错误性解读
英国科技新闻媒体V3日前针对大数据应用,列举了10大有关神话和误区。
1、大数据是新技术
大数据是新的术语,但其海量数据分析的概念并不新。许多人,包括Teradata首席技术官StephenBrobst在内认为,对于那些刚开始认识到数据价值的用户,大数据有一些误导。Brobst表示:“大数据是一个长期项目,而不是12个月内,是24~36个月的世间情。”
2、大数据是一种商品
初次接触大数据概念,会认为它是一种特殊形式数据,独立于其他低端数据格式。但事实并非如此。
“你能买一个数据库数据吗?”Gartner杰出分析师DonaldFeinberg说,“是的,你可以买
[安防电子]