打印
[STM32F1]

串口多返回一个值怎么解决

[复制链接]
399|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lizye|  楼主 | 2021-3-2 22:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

if(RXBUF0=='e')
        {
            n_1=count/256;    //count=60000,n_1=EA,n_2=60
            TXBUF0 = n_1;
            while((UTCTL0&0X01)==0);
            n_2=count-256*n_1;
            TXBUF0 = n_2;
       }
走串口接收n_1和n_2的值,应该显示‘EA 60’,结果返回是‘EA 60 60’,多了个60,请问哪来的,咋改

使用特权

评论回复
沙发
xxrs| | 2021-3-2 22:29 | 只看该作者
你要看数据类型 在分析       你最好加上printf看看打出来的数据在分析

使用特权

评论回复
板凳
chuxh| | 2021-3-2 22:31 | 只看该作者
这个进行数据长度的判断的呀,多出的数据直接舍弃掉的

使用特权

评论回复
地板
dingy| | 2021-3-2 22:32 | 只看该作者
还一个进行数据的crc校验的,校验不过,请求重新发送数据的也可以的

使用特权

评论回复
5
supernan| | 2021-3-2 22:34 | 只看该作者
多返回的数据直接丢弃掉的不就行了么?

使用特权

评论回复
6
liuzaiy| | 2021-3-2 22:36 | 只看该作者
怎么可能返回多个数字呢  ???

使用特权

评论回复
7
ousj| | 2021-3-2 22:40 | 只看该作者
RXBUF0=='e'这个是怎么读取的呢。

使用特权

评论回复
8
zyf部长| | 2021-3-2 22:43 | 只看该作者
这个首先看下你的看门狗定时器的正常开启没的

使用特权

评论回复
9
lizye|  楼主 | 2021-3-2 22:45 | 只看该作者

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

使用特权

评论回复
10
guanjiaer| | 2021-4-1 09:59 | 只看该作者
多出的数据直接舍弃掉

使用特权

评论回复
11
heimaojingzhang| | 2021-4-1 10:00 | 只看该作者
进行数据的crc校验

使用特权

评论回复
12
keaibukelian| | 2021-4-1 10:03 | 只看该作者
字符形式的转换啊

使用特权

评论回复
13
labasi| | 2021-4-1 10:05 | 只看该作者
是不是设置有问题啊

使用特权

评论回复
14
paotangsan| | 2021-4-1 10:06 | 只看该作者
自己写一个协议

使用特权

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

本版积分规则

852

主题

9757

帖子

2

粉丝