查看: 3096|回复: 3

[讨论] 多TASK机制

[复制链接]

该用户从未签到

57

主题

531

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1356
最后登录
2016-12-5
发表于 2016-10-21 10:45:44 | 显示全部楼层 |阅读模式
最近在优化一个工程,现在用了两个TASK,TASK1和TASK2;TASK1负责接收CAN报文,解析组包存入FIFO缓存。
TASK2负责从FIFO中取出报文转发给USB端口发送给PC。
这两TASK只是上行操作的。
现在想优化一下下行操作,也想建立一个FIFO来进行缓存,USB是在callback中接收的。
接收完解析出来直接存到FIFO,
是不是可以再创建一个TASK3来读取FIFO中的数据转发给CAN接口开发送呢?

问题:多TASK,不设计彼此的优先权,等同的,是否会存在竞争呢?  操作这种机制可否完成收发的任务?
几个TASK之间会相互的影响吗?
比如TASK2发送数据给PC,TAST3将PC发下来的数据给CAN口。而CAN同时也有数据接收。会不会造成CAN接收无法进入中断,
或者USB接收出现问题?

有没有更加优化的解决办法?
回复

使用道具 举报

  • TA的每日心情
    无聊
    2017-1-24 08:47
  • 签到天数: 49 天

    连续签到: 1 天

    [LV.5]常住居民I

    0

    主题

    524

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1267
    最后登录
    2017-4-19
    发表于 2016-10-21 11:44:09 | 显示全部楼层
    应该会报错                    
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-1-4 08:05
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    85

    主题

    1629

    帖子

    1

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2569

    优秀版主

    最后登录
    2019-3-28
    发表于 2016-10-21 13:27:51 | 显示全部楼层
    什么OS,这样风险很大,最好用信号量同步一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    57

    主题

    531

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1356
    最后登录
    2016-12-5
     楼主| 发表于 2016-10-21 13:55:04 | 显示全部楼层
    技术范儿 发表于 2016-10-21 13:27
    什么OS,这样风险很大,最好用信号量同步一下

    BM的,没操作系统,只不过模拟的TASK调用
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 03:57 , Processed in 0.086175 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表