OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3101|回复: 3

串口DMA接收,能进中断,但是阻塞的任务并不能运行

[复制链接]

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2022-11-7
在线时间
13 小时
发表于 2023-4-20 16:49:56 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 星辰cc 于 2023-4-20 16:52 编辑

已知:
1.串口中断抢占优先级为6,在5-15中间
2.创建二值信号量的时候,USART1_RX_BinarySem_Handle = xSemaphoreCreateBinary();,查看watch1 USART1_RX_BinarySem_Handle的值是 0x20002D00,应该是创建成功的
3.用串口给单片机发信息,仿真打断点,程序可以运行到释放二值信号量这一步


4.在任务这边打断点,只有第一次上电运行的时候(电脑的串口未发消息),可以进一次,其他时候即使串口接收到了信息(查看接收缓存里有东西),也进不了这个任务


4.

4.

3.

3.

最佳答案

查看完整内容[请看2#楼]

任务切换的那个参数 初始化要赋值pdFALSE的吧?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

70

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
364
金钱
364
注册时间
2016-8-23
在线时间
71 小时
发表于 2023-4-20 16:49:57 | 显示全部楼层
任务切换的那个参数 初始化要赋值pdFALSE的吧?
回复

使用道具 举报

70

主题

6697

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12687
金钱
12687
注册时间
2012-11-26
在线时间
3710 小时
发表于 2023-4-21 10:02:47 | 显示全部楼层
这种情况不应该用消息队列么   怎么用了信号量
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2022-11-7
在线时间
13 小时
 楼主| 发表于 2023-5-5 10:44:18 | 显示全部楼层
jermy_z 发表于 2023-4-21 10:02
这种情况不应该用消息队列么   怎么用了信号量

还在学习摸索中,消息队列使用不熟悉。这种情况的确是使用消息队列更好,谢谢指教。下次我用队列试试
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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