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

[复制链接]
866|27
手机看帖
扫描二维码
随时随地手机跟帖
默默玩火|  楼主 | 2019-3-21 09:06 | 显示全部楼层 |阅读模式
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,请问哪来的,咋改

相关帖子

零三翟邢止胃| | 2019-3-21 09:32 | 显示全部楼层
帮你顶住啊!!

使用特权

评论回复
评论
默默玩火 2019-3-21 09:41 回复TA
老哥你每次咋那么皮呢。。。 
zhangmangui| | 2019-3-21 22:39 | 显示全部楼层
你要看数据类型 在分析       你最好加上printf看看打出来的数据在分析

使用特权

评论回复
vibra2016| | 2019-3-23 00:24 | 显示全部楼层
这个进行数据长度的判断的呀,多出的数据直接舍弃掉的

使用特权

评论回复
vibra2016| | 2019-3-23 00:24 | 显示全部楼层
还一个进行数据的crc校验的,校验不过,请求重新发送数据的也可以的

使用特权

评论回复
tongbu2015| | 2019-3-23 21:58 | 显示全部楼层
多返回的数据直接丢弃掉的不就行了么?

使用特权

评论回复
tongbu2015| | 2019-3-23 21:58 | 显示全部楼层
数据包的一定要有校验的

使用特权

评论回复
kkzz| | 2019-4-1 16:18 | 显示全部楼层
怎么可能返回多个数字呢                       

使用特权

评论回复
hudi008| | 2019-4-1 16:19 | 显示全部楼层
‘EA 60’怎么获取的这个数据呢                       

使用特权

评论回复
lzmm| | 2019-4-1 16:19 | 显示全部楼层
可以使用for循环读取试试看看。                       

使用特权

评论回复
minzisc| | 2019-4-1 16:20 | 显示全部楼层
RXBUF0=='e'这个是怎么读取的呢。

使用特权

评论回复
selongli| | 2019-4-1 16:20 | 显示全部楼层
while((UTCTL0&0X01)==0);这个对吗

使用特权

评论回复
fentianyou| | 2019-4-1 16:21 | 显示全部楼层
使用中断吧。                             

使用特权

评论回复
xiaoyaodz| | 2019-4-1 16:21 | 显示全部楼层
串口多返回一个是什么问题   

使用特权

评论回复
febgxu| | 2019-4-1 16:22 | 显示全部楼层
你要实现的是什么功能呢   

使用特权

评论回复
sdlls| | 2019-4-1 16:22 | 显示全部楼层
没有看懂这个代码要表达什么  

使用特权

评论回复
pixhw| | 2019-4-1 16:23 | 显示全部楼层
网上不是有发送字符串的函数吗?        

使用特权

评论回复
fentianyou| | 2019-4-1 16:23 | 显示全部楼层
中断做控制计较简单一些。                              

使用特权

评论回复
kkzz| | 2019-4-1 16:23 | 显示全部楼层
你是不是将寄存器读取了两次呢?                  

使用特权

评论回复
selongli| | 2019-4-1 16:23 | 显示全部楼层
应该判断是否产生外部的串口中断  

使用特权

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

本版积分规则

5

主题

6

帖子

0

粉丝