搜索
bottom↓
回复: 5

freertos中关于xQueueReceiveFromISR的疑惑

[复制链接]

出0入0汤圆

发表于 2022-6-4 22:36:12 | 显示全部楼层 |阅读模式
freertos中关于xQueueReceiveFromISR的疑惑
本人理解,在freertos中如果在中断中用xQueueSendFromISR发送一个队列,STM32平台,freertos版本V10.0.1,在KEIL中用定义的任务中用xQueueReceive函数可以接收到传过来的队列值,用xQueueReceiveFromISR无法接收到队列值这个应该是正常的
在RISC-V平台,也就是CH32V103平台,MRS平台,freertos版本V10.4.6,在中断中用xQueueSendFromISR发送一个队列,单独创建的任务中调用用xQueueReceiveFromISR可以接收队列值,用xQueueReceive函数不能接收队列值,不知道是平台问题还是编译器的问题,

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2022-6-5 07:04:37 来自手机 | 显示全部楼层
自己顶一下

出0入8汤圆

发表于 2022-6-5 12:15:53 来自手机 | 显示全部楼层
我记得好像带fromISR的函数是中断安全的,普通应用任务里也可以调用的。
但中断里面调用的,必须带fromisr的

出0入0汤圆

 楼主| 发表于 2022-6-5 12:35:21 | 显示全部楼层
liwei_jlu 发表于 2022-6-5 12:15
我记得好像带fromISR的函数是中断安全的,普通应用任务里也可以调用的。
但中断里面调用的,必须带fromisr ...
(引用自3楼)

是这么说,但调用没反应不能传递队列值这个就不知道是什么原因!

出105入79汤圆

发表于 2022-6-5 18:50:44 | 显示全部楼层
https://www.amobbs.com/thread-5764530-1-1.html

之前学习过,中断调用带fromISR的函数发送信号,可以触发一次额外的任务调度。

不能接收队列值可能是别的问题?应该都能收到的

出0入0汤圆

 楼主| 发表于 2022-6-5 20:51:31 来自手机 | 显示全部楼层
qwe2231695 发表于 2022-6-5 18:50
https://www.amobbs.com/thread-5764530-1-1.html

之前学习过,中断调用带fromISR的函数发送信号,可以触 ...

(引用自5楼)

反复试过几次,在kei里面可以用不带ISR的函数接收,在MRS里面只能用带ISR的函数接收,两者相反,自己觉得奇怪特来请教一下
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-15 03:48

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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