硬汉嵌入式论坛

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

[有问必答] DMA数据流的软件优先级配置的疑问

[复制链接]

30

主题

63

回帖

153

积分

初级会员

积分
153
发表于 2021-5-7 23:12:47 | 显示全部楼层 |阅读模式
硬汉哥,DMA数据流的软件优先级如何配置是否有讲究?占用带宽越高优先级越低吗?
最近碰到一个问题,设备在调用数据存储的,会基本同时调用SDIO的DMA 和 GUI的字库外部存储 SPI的DMA,因为上了操作系统,都采用消息队列中断唤醒的方式,然后调试的时候有发现下面一个问题
当SDIO的DMA优先级高于SPI的DMA时,SPI的DMA偶尔会出现DMA未全部发送导致DMA中断没有
但是SDIO的DMA优先级低于SPI的DMA的时候,就没有这个问题

硬件配置如下:
SDIO时钟40M,4线制,带宽40*4/8=20M
SPI时钟40M,8bit数据,带宽40/8=5M
带宽应该是这么计算吧?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2021-5-8 08:08:58 | 显示全部楼层
这种大概率是是程序问题。

首先你字库的读取搞个SPI DMA方式不太合适,大部分界面设置,字都不多,而且都是分散的几个字,所以每次都要启动下DMA,处理下DMA中断,再发送个消息队列。
回复

使用道具 举报

30

主题

63

回帖

153

积分

初级会员

积分
153
 楼主| 发表于 2021-5-8 10:18:51 | 显示全部楼层
eric2013 发表于 2021-5-8 08:08
这种大概率是是程序问题。

首先你字库的读取搞个SPI DMA方式不太合适,大部分界面设置,字都不多,而且 ...

那硬汉哥,字库是用SPI+中断  还是直接SPI阻塞比较合适?谢谢
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2021-5-9 07:36:33 | 显示全部楼层
熊大 发表于 2021-5-8 10:18
那硬汉哥,字库是用SPI+中断  还是直接SPI阻塞比较合适?谢谢

查询方式,和GUI一起都在同一个低优先级任务里面慢慢刷就可以。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-16 15:41 , Processed in 0.036997 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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