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

为什么使用DMA不能释放CPU

[复制链接]
  • TA的每日心情
    无聊
    3 小时前
  • 签到天数: 167 天

    [LV.7]常住居民III

    152

    主题

    214

    回帖

    1794

    积分

    金牌会员

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

    使用道具 举报

  • TA的每日心情
    无聊
    昨天 09:14
  • 签到天数: 135 天

    [LV.7]常住居民III

    8

    主题

    79

    回帖

    1098

    积分

    金牌会员

    机长

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

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-20 11:12 , Processed in 0.057495 second(s), 36 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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