找回密码
 立即注册
查看: 641|回复: 1

为什么使用DMA不能释放CPU

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:455
  • 最近打卡:2025-06-10 13:10:51
已绑定手机

236

主题

340

回帖

1650

积分

金牌会员

积分
1650
发表于 2023-7-25 20:09:16 | 显示全部楼层 |阅读模式
GN[W~YQV@77XR~1EZ]E{T[E.png


这是正常逻辑代码,运行也是正常的,但这样还是没有起到释放CPU的效果

FKM@Y$}6{KJJE~E4]@]F`UM.png

在执行DMA之前访问上一次数据是否传输完成,这样写才真正释放CPU,但这样写驱动就不正常了?怎么回事
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:500
  • 最近打卡:2025-06-16 10:39:44
已绑定手机

29

主题

349

回帖

1991

积分

金牌会员

机长

积分
1991
发表于 2023-9-28 11:28:53 | 显示全部楼层
因为你这么写CPU在死等DMA完成,在DMA完成前CPU干不了其它的活儿,所以完全没体现出DMA的效果来
业余撸代码,专业开飞机 https://gitee.com/STC-MCU
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-17 05:21 , Processed in 0.150592 second(s), 56 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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