硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3781|回复: 7
收起左侧

[FreeRTOS] 同步API总结和疑问

[复制链接]

41

主题

214

回帖

337

积分

高级会员

积分
337
发表于 2021-3-1 19:22:17 | 显示全部楼层 |阅读模式
信号量:
                中断和任务之间同步。 例如串口中断收到消息,告诉任务把消息取走
     疑问: 任务和任务之间同步:因为优先级反转的原因,仅在优先级相同的任务之间使用吗? 不可在高优先级和低优先级任务之间使用。

互斥量
      可避免优先级反转,可在高优先级和低优先级任务之间使用。疑问:是不是任务同步,尽量用互斥量?

任务标志组
         A任务阻塞,直到B任务和C任务都说好,A才能run。  疑问:不在乎优先级反转吗?  例如看门狗的例子,喂狗的任务需要最高优先级。

火星车优先级反转例子:
https://blog.csdn.net/bbs598598/article/details/7746136

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106693
QQ
发表于 2021-3-1 19:36:24 | 显示全部楼层
鉴于楼主最近的FreeRTOS问题贴略多,建议所有问题全部在此贴交流讨论即可,此贴作为你的所有问题汇总贴,楼主怎么看。
回复

使用道具 举报

41

主题

214

回帖

337

积分

高级会员

积分
337
 楼主| 发表于 2021-3-1 20:21:29 | 显示全部楼层
eric2013 发表于 2021-3-1 19:36
鉴于楼主最近的FreeRTOS问题贴略多,建议所有问题全部在此贴交流讨论即可,此贴作为你的所有问题汇总贴,楼 ...

好的,其实还有最后一个了
回复

使用道具 举报

41

主题

214

回帖

337

积分

高级会员

积分
337
 楼主| 发表于 2021-3-1 20:30:40 | 显示全部楼层
tickless 低功耗模式的理解。
我的理解是:开发板的例子,从开始就把mcu配置为tickless模式。即rtos里面每隔一段时间就把mcu变成睡眠模式,问题:唤醒好像是靠systick唤醒吗?前面的例子是靠按键唤醒的,所以我没看到按键唤醒,有点晕。




不好意思:老是烦版主,不过freertos也学完了。谢谢版主。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106693
QQ
发表于 2021-3-2 07:35:51 | 显示全部楼层
1、不是,优先级翻转主要还是资源共享问题,不限制通优先级任务之间
2、任务同步无需互斥信号量,也切勿将互斥用于任务同步,互斥的标准姿势是在一个任务里面保护一个资源。
3、掌握需要放置优先级反转的本质,资源共享才需要,同步不需要。

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106693
QQ
发表于 2021-3-2 07:36:39 | 显示全部楼层
snakeemail 发表于 2021-3-1 20:30
tickless 低功耗模式的理解。
我的理解是:开发板的例子,从开始就把mcu配置为tickless模式。即rtos里面每 ...

前面的是靠EXTI中断。
回复

使用道具 举报

41

主题

214

回帖

337

积分

高级会员

积分
337
 楼主| 发表于 2021-3-2 20:57:11 | 显示全部楼层
同步是说,当我调用一个API时,如果没有满足API的要求,那我就阻塞这等着,直到条件满足。
例如串口通讯, 任务A解析串口消息,但是发现二值信号为0,就阻塞等着,直到串口中断把二值信号加1.。这里是说资源有还是没有。

互斥是说,这个共享资源一直有,但是我用着,你就等一下,等我用完你再用。

版主举的例子,用二值信号做互斥,我就晕在这里,把同步和互斥的概念混淆了,我以为二值信号也是做互斥的,其实二值信号是表示共享资源有还是没有。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106693
QQ
发表于 2021-3-3 10:00:12 | 显示全部楼层
snakeemail 发表于 2021-3-2 20:57
同步是说,当我调用一个API时,如果没有满足API的要求,那我就阻塞这等着,直到条件满足。
例如串口通讯,  ...

二值信号量做互斥,相比专用的互斥信号量,优势是效率高。

当然,前提是不在乎优先级翻转问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-30 08:49 , Processed in 0.293359 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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