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

为什么使用DMA不能释放CPU

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:518
  • 最近打卡:2026-05-06 16:22:30
已绑定手机

278

主题

425

回帖

2307

积分

金牌会员

积分
2307
发表于 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,但这样写驱动就不正常了?怎么回事
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:824
  • 最近打卡:2026-05-09 00:15:28
已绑定手机

33

主题

381

回帖

3630

积分

论坛元老

机长

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

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-5-9 05:43 , Processed in 0.133264 second(s), 51 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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