[MCU] 数据的处理该在哪里做

[复制链接]
 楼主| zwll 发表于 2020-10-20 20:32 | 显示全部楼层 |阅读模式
单片机和上位机通信,单片机接收实在中断内。我想问的是数据的处理该在哪里做,我以前在中断内处理,感觉太影响其他部分的运行了。

有三条保存在本地数据要发给上位机,如果上位机回复收到,本地就删除数据。发送在主函数,接收在中断,接收解析在主函数。
请问一般是三条同发,然后收到三个回复,然后处理这三个回复?
langgq 发表于 2020-10-20 20:36 | 显示全部楼层
发一条收一条,处理一条?
huwr 发表于 2020-10-20 20:40 | 显示全部楼层
为了确保稳定性,主函数内发送部分是定时工作,几秒钟一次,而且每次只发一条,好让收到的回复在主函数接收部分做完处理。
 楼主| zwll 发表于 2020-10-20 20:43 | 显示全部楼层
请教收发和处理方面,应该这么做才好?
songqian17 发表于 2020-10-20 21:00 | 显示全部楼层
这个要根据实际的情况综合考虑的。比如处理数据的运算量,对通讯实时性的要求等
llljh 发表于 2020-10-20 21:03 | 显示全部楼层
中断快进快出,做个标记,在对应线程处理记好了
supernan 发表于 2020-10-20 21:06 | 显示全部楼层
按照你说的,对时间要求没那么严格就直接是一个个发一个个处理,比较简单,如果是三个一起发,并且等待到回复,可以使用操作系统的事件标志组,
yinxiangh 发表于 2020-10-20 21:10 | 显示全部楼层
最近在学freertos,请问有移植到tm4c上的案例吗?
zyf部长 发表于 2020-10-20 21:15 | 显示全部楼层
在main函数里面
llia 发表于 2020-10-20 21:19 | 显示全部楼层
定时器中断里面呢?
langgq 发表于 2020-10-20 21:25 | 显示全部楼层
一般的处理都是主函数里面。
gongche 发表于 2020-10-20 21:32 | 显示全部楼层
收发可以使用DMA的
wenfen 发表于 2020-10-20 21:38 | 显示全部楼层
在主函数处理。
chenho 发表于 2020-10-20 21:44 | 显示全部楼层
使用乒乓操作。
juventus9554 发表于 2020-10-20 21:51 | 显示全部楼层
中断内处理没有问题的。
xxrs 发表于 2020-10-20 21:54 | 显示全部楼层
能不能粘贴一下代码看是什么问题
ousj 发表于 2020-10-20 21:57 | 显示全部楼层
影响其他部分的运行就麻烦了。
guoyt 发表于 2020-10-20 22:01 | 显示全部楼层
计算量很大吗?
langgq 发表于 2020-10-20 22:07 | 显示全部楼层
推荐使用中断外运行。
bqyj 发表于 2020-10-20 22:10 | 显示全部楼层
可以使用标志位进行处理的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

885

主题

11314

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部

885

主题

11314

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部