123
返回列表 发新帖
楼主: 萱蘇2015

[其他] PDB0触发ADC0 ADC2 ADC3同时采样,利用DMA1的其中6个通道搬运

[复制链接]
  • TA的每日心情
    开心
    2017-9-7 09:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    24

    主题

    130

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    401
    最后登录
    2020-11-3
     楼主| 发表于 2017-9-22 09:33:07 | 显示全部楼层
    小恩GG 发表于 2017-9-19 17:50
    这是个取舍的问题,或者你使用分散/收集模式,当然这就更复杂了,一个TCD使用完,初始化另一个TCD,就像 ...

    我查阅资料发现您说的分散/收集模式好像不太适合我的方案,您看我分析的是否?
    1.分散/收集模式     是针对主循环结束后进行的操作
    2.而我的方案是:当ADC0_A    ADC0_B 的R(A)   R(B)有数据后,不能对应的触发DMA1_CH0   DMA1_CH1通道(其中一个有数据后就会触发两个通道,因为DMA的触发源是ADC0,而没有区别ADC0_A还是ADC0_B)。所以说我的方案应该是针对副循环的吧?
    哎...今天够累的,签到来了1...
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24879
    最后登录
    2025-7-20
    发表于 2017-9-22 10:17:47 | 显示全部楼层
    萱蘇2015 发表于 2017-9-22 09:33
    我查阅资料发现您说的分散/收集模式好像不太适合我的方案,您看我分析的是否?
    1.分散/收集模式     是针 ...

    我说过了,现在想地办法都是为了弥补ADC 0 触发源不能区分A和B,当然没有特别完美的办法了,既然硬件不能直接改善,软件就需要做更多的任务哦
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-9-7 09:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    24

    主题

    130

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    401
    最后登录
    2020-11-3
     楼主| 发表于 2017-9-22 11:37:09 | 显示全部楼层
    小恩GG 发表于 2017-9-22 10:17
    我说过了,现在想地办法都是为了弥补ADC 0 触发源不能区分A和B,当然没有特别完美的办法了,既然硬件不能 ...

    好吧  谢谢 那我再研究研究
    哎...今天够累的,签到来了1...
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-9-7 09:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    24

    主题

    130

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    401
    最后登录
    2020-11-3
     楼主| 发表于 2017-9-25 11:38:13 | 显示全部楼层
    小恩GG 发表于 2017-9-19 17:50
    这是个取舍的问题,或者你使用分散/收集模式,当然这就更复杂了,一个TCD使用完,初始化另一个TCD,就像 ...

    关于分散/收集模式有个问题请教一下:如果设置一个循环,那么主循环TCD_1使用完,便初始化了另一个TCD_2开始执行,TCD_2使用完再次初始化TCD_1,那么这样是不是就可以两个TCD循环执行了?
    哎...今天够累的,签到来了1...
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    712

    主题

    6371

    帖子

    0

    超级版主

    Rank: 8Rank: 8

    积分
    24879
    最后登录
    2025-7-20
    发表于 2017-9-25 13:52:00 | 显示全部楼层
    萱蘇2015 发表于 2017-9-25 11:38
    关于分散/收集模式有个问题请教一下:如果设置一个循环,那么主循环TCD_1使用完,便初始化了另一个TCD_2 ...

    是可以的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-9-7 09:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    24

    主题

    130

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    401
    最后登录
    2020-11-3
     楼主| 发表于 2017-10-12 09:25:42 | 显示全部楼层
    小恩GG 发表于 2017-9-18 14:16
    DMA不会区分ADC DMA request是由ADC0_A 和ADC0_B中哪一个引发的,你需要确保每次只有一个DMA channel是en ...

    您好,还是13楼那个问题:DMA触发无法区别ADC0_A通道还是ADC0_B通道的问题。
    如下图:
    问题.png
    我研究了好久还是没有解决了。您看帮建一个K60或者K10的例程我参考一下呢?
    实现目标:
    方法.jpg
    PIT0周期性触发PDB0的0通道,PDB0的0通道的A  B  分别触发ADC0_A通道 ADC0_B通道,
    然后想ADC0_A通道触发一个DMA1的一个通道进行数据搬运,
              ADC0_B通道触发一个DMA1的一个通道进行数据搬运.
    DMA通道10次或者100次一个大循环,也就是采集10或者100 个点进行一次数据搬运。
    哎...今天够累的,签到来了1...
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-20 16:46 , Processed in 0.100594 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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