电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
问答
两个单片机串口传一组数组,接收写得有问题,有没有大佬看一下
已解决
73482
个问题
已帮助
5993
位优秀工程师
两个单片机串口传一组数组,接收写得有问题,有没有大佬看一下
白云苍狗
2019-02-19
浏览量:755
显示全部
单片机
关注问题
写回答
0
0
收起
我来回答
上传资料:
选择文件
文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
捷波
那个for循环有问题 ,前面接收的数据都冲掉了,你这里应该用计数方式来把SBUF中的数据存到ReData数组中。
发布于
2019-02-19
举报
评论 6
2
0
白云苍狗
回复了 捷波:ReData[m]=SBUF; //将接收发送单片机82-56行数据依次存入数组 m++; if(m>5) m=0;
回复
白云苍狗
回复了 捷波:ReData[m]=SBUF; //将接收发送单片机82-56行数据依次存入数组 m++; if(m>5) m=0;
回复
白云苍狗
回复了 捷波:ReData[m]=SBUF;m++;if(m>5) m=0;这样可行吗
回复
白云苍狗
回复了 捷波:还有就是我109行的包头0x0a是不是也存入了数组
回复
捷波
回复了 白云苍狗:这个M应该是全局变量,否则每次进来都会重新赋值
回复
白云苍狗
回复了 捷波:是全局变量,这样写我的包头判断完会不会也写入数组
回复
其他答案
数量:
8
yhj416606438
那里不能用for循环,接收一个数据,你怎么能让他一次存6个呢,m做静态变量或者全局变量都可以,不能用for循环
发布于
2019-02-20
举报
评论 0
1
0
厉害企鹅
要看数组的大小与类型是不是符合的
发布于
2019-02-20
举报
评论 0
0
0
XiaoJH
for循环里,ReData数组的所有元素每次都被重赋值了,就是这个不对。
发布于
2019-02-20
举报
评论 0
0
0
feiante
中断每次接收一个数据,但是你每次更新6次数组,所以是不对的
发布于
2019-02-20
举报
评论 0
0
0
liuxiaofei126
ReData数组初始化没看到,怎么存储啊
发布于
2019-02-20
举报
评论 0
0
0
drepa
这个for循环没做缓存处理,前面的数据丢弃了,所以就出错了。
发布于
2019-02-23
举报
评论 0
0
0
chen0000009
中断那里用for循环没有意义,SBUF的刷新速度没那么快的
发布于
2019-02-24
举报
评论 0
0
0
1667
处理不过来,数据被覆盖丢失
发布于
2019-02-25
举报
评论 0
0
0
相关问题
问题达人
换一批
文章
知识经验换现金
换一批
两个单片机串口传一组数组,接收写得有问题,有没有大佬看一下
写回答
关注问题
×
我要举报该内容,理由是:
内容质量差:
内容太水、伸手党
垃圾广告信息:
广告、招聘、推广、测试内容等
偏离问答主题:
与技术无关、讨论类
与社区已有内容重复:
违规内容:
色情、暴力、血腥、敏感信息等
不友善内容:
人事攻击、挑衅辱骂、恶意行为
以上选项都不是: