打印
[STM32F1]

printf输出对应的数组元素总是多48

[复制链接]
703|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shimx|  楼主 | 2021-6-15 22:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
通过串口调试助手usart串口输入后,printf输出对应的数组元素总是多48。

使用特权

评论回复
沙发
renyaq| | 2021-6-15 22:18 | 只看该作者

什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
heweibig| | 2021-6-15 22:21 | 只看该作者

你有什么打算呢?或者你想知道什么?

使用特权

评论回复
地板
shimx|  楼主 | 2021-6-15 22:23 | 只看该作者
usart串口输入后,一位位的用printf输出对应的数组元素,总是多48。比如本来是1,读出来应该是49,本来是2,读出来应该是50

使用特权

评论回复
5
huangchui| | 2021-6-15 22:31 | 只看该作者

楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
6
zhanghqi| | 2021-6-15 22:33 | 只看该作者

//对所用数组的一些设置
#define USART_REC_LEN                          10         
#define EN_USART1_RX                         1               
                  
extern uint16_t  USART_RX_BUF[USART_REC_LEN];
extern uint16_t USART_RX_STA;                        


//USART串口的部分主要配置

        USART_InitStructure.USART_BaudRate = bound;
        USART_InitStructure.USART_WordLength = USART_WordLength_8b;
        USART_InitStructure.USART_StopBits = USART_StopBits_1;
        USART_InitStructure.USART_Parity = USART_Parity_No;
        USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
        USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;        

    USART_Init(USART1, &USART_InitStructure);
    USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
    USART_Cmd(USART1, ENABLE);                  

//输出函数
printf("%d",USART_RX_BUF[0]);

使用特权

评论回复
7
shimx|  楼主 | 2021-6-15 22:35 | 只看该作者
请大佬指教,不懂啊,自己只能先减去48用着

使用特权

评论回复
8
chuxh| | 2021-6-15 22:38 | 只看该作者
编码问题?你试试这个版块有个版主刚发的QT开发的串口助手。看看结果如何。

使用特权

评论回复
9
llljh| | 2021-6-15 22:41 | 只看该作者
通过什么输出呢

使用特权

评论回复
10
supernan| | 2021-6-15 22:44 | 只看该作者

编码有问题吧

使用特权

评论回复
11
jiajs| | 2021-6-15 22:46 | 只看该作者
先确认一下发送的是什么吧

使用特权

评论回复
12
shimx|  楼主 | 2021-6-15 22:48 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

评论回复
13
kingkits| | 2021-6-16 09:57 | 只看该作者
ASCII ‘1’ =0x31 (49)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

857

主题

10661

帖子

5

粉丝