智能车制作

 找回密码
 注册

扫一扫,访问微社区

楼主: yangkuanqaz8598
打印 上一主题 下一主题

[讨论] K60 的 DMA 部分

  [复制链接]

22

主题

321

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3258

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
1776
贡献
824
兑换币
625
注册时间
2011-9-30
在线时间
329 小时
21#
发表于 2013-2-18 11:49:55 | 只看该作者
yangkuanqaz8598 发表于 2013-2-17 16:53
对于IO口而言,它的触发如果是依靠外部中断的话,那在外部中断函数里面不是应该有相应的软件触发DMA代码吗 ...

AD、FTM等等触发DMA都在相应的模块里有介绍吧,在英文数据手册里有。我也在研究DMA,多多交流啊
回复 支持 反对

使用道具 举报

10

主题

105

帖子

0

精华

高级会员

Rank: 4

积分
619
威望
289
贡献
138
兑换币
184
注册时间
2012-12-13
在线时间
96 小时
22#
 楼主| 发表于 2013-2-18 12:23:54 | 只看该作者
1174544639 发表于 2013-2-18 11:49
AD、FTM等等触发DMA都在相应的模块里有介绍吧,在英文数据手册里有。我也在研究DMA,多多交流啊

对哦,嗯嗯,去研究下AD模块里面的DMA触发位
回复 支持 反对

使用道具 举报

17

主题

466

帖子

0

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
13941
QQ
威望
10902
贡献
2497
兑换币
716
注册时间
2011-9-24
在线时间
271 小时
23#
发表于 2013-2-18 13:52:44 | 只看该作者
yangkuanqaz8598 发表于 2013-2-18 09:50
可以根据ADC memory map 里面的 absolut address(hex)来定吗?  也就地址就是    0X4003B010

那个是宏么,一样的吧
回复 支持 反对

使用道具 举报

10

主题

105

帖子

0

精华

高级会员

Rank: 4

积分
619
威望
289
贡献
138
兑换币
184
注册时间
2012-12-13
在线时间
96 小时
24#
 楼主| 发表于 2013-2-18 21:20:05 | 只看该作者
suebillt 发表于 2013-2-18 13:52
那个是宏么,一样的吧

下面就是ADC结果寄存器的相关宏定义了,但是看来看去还是不能理解,到底哪个才等价于ADC0_RA的实际地址值,迫于不解,只能直接使用0x4000B010这样的了。

/* ADC - Peripheral instance base addresses */
/** Peripheral ADC0 base pointer */
#define ADC0_BASE_PTR                            ((ADC_MemMapPtr)0x4003B000u)
/** Peripheral ADC1 base pointer */
#define ADC1_BASE_PTR                            ((ADC_MemMapPtr)0x400BB000u)

/* ADC - Register accessors */

#define ADC_R_REG(base,index)         ((base)->R[index])                    

/* R Bit Fields */
#define ADC_R_D_MASK                             0xFFFFu
#define ADC_R_D_SHIFT                            0
#define ADC_R_D(x)                               (((uint32_t)(((uint32_t)(x))<<ADC_R_D_SHIFT))&ADC_R_D_MASK)


/* ADC - Register instance definitions */
/* ADC0 */

#define ADC0_RA                                  ADC_R_REG(ADC0_BASE_PTR,0)
#define ADC0_RB                                  ADC_R_REG(ADC0_BASE_PTR,1)

/* ADC1 */
#define ADC1_RA                                  ADC_R_REG(ADC1_BASE_PTR,0)

/* ADC - Register array accessors */
#define ADC0_R(index)                            ADC_R_REG(ADC0_BASE_PTR,index)
#define ADC1_R(index)                            ADC_R_REG(ADC1_BASE_PTR,index)

#define ADC1_RB                                  ADC_R_REG(ADC1_BASE_PTR,1)

回复 支持 反对

使用道具 举报

17

主题

466

帖子

0

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
13941
QQ
威望
10902
贡献
2497
兑换币
716
注册时间
2011-9-24
在线时间
271 小时
25#
发表于 2013-2-18 23:46:47 | 只看该作者
yangkuanqaz8598 发表于 2013-2-18 21:20
下面就是ADC结果寄存器的相关宏定义了,但是看来看去还是不能理解,到底哪个才等价于ADC0_RA的实际地址值 ...

头文件看的很头疼啊,我也是,我DMA开好了,不过有点小bug
回复 支持 反对

使用道具 举报

10

主题

105

帖子

0

精华

高级会员

Rank: 4

积分
619
威望
289
贡献
138
兑换币
184
注册时间
2012-12-13
在线时间
96 小时
26#
 楼主| 发表于 2013-2-19 02:03:26 | 只看该作者
本帖最后由 yangkuanqaz8598 于 2013-2-19 02:14 编辑
suebillt 发表于 2013-2-18 23:46
头文件看的很头疼啊,我也是,我DMA开好了,不过有点小bug

哈哈,我现在没有核心板,调试不了,等你调试好了,希望能给代码借鉴哈!官方检测方法中,直接采样的方法需要采样频率大于20KHz,这个换到ADC的设置是对应哪个参数呢,是ADC的时钟频率吗?
还有一个问题是,如果选择传感器直接采样的话。那在处理数据方面,是把所有传感器采样完成一次采样后,就进行所有传感器的下一次采样吗?他们之间会需要一定的时间间隔吗?

回复 支持 反对

使用道具 举报

17

主题

466

帖子

0

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
13941
QQ
威望
10902
贡献
2497
兑换币
716
注册时间
2011-9-24
在线时间
271 小时
27#
发表于 2013-2-19 11:22:53 | 只看该作者
yangkuanqaz8598 发表于 2013-2-19 02:03
哈哈,我现在没有核心板,调试不了,等你调试好了,希望能给代码借鉴哈!官方检测方法中,直接采样的方法 ...

ADC我没试过啊,你继续女里努力
回复 支持 反对

使用道具 举报

10

主题

105

帖子

0

精华

高级会员

Rank: 4

积分
619
威望
289
贡献
138
兑换币
184
注册时间
2012-12-13
在线时间
96 小时
28#
 楼主| 发表于 2013-2-19 11:27:12 | 只看该作者

RE: K60 的 DMA 部分

suebillt 发表于 2013-2-19 11:22
ADC我没试过啊,你继续女里努力

哈哈,今天核心板到了,我也测试一把,一起继续努力继续努力
回复 支持 反对

使用道具 举报

17

主题

466

帖子

0

精华

杰出人士

Rank: 12Rank: 12Rank: 12

积分
13941
QQ
威望
10902
贡献
2497
兑换币
716
注册时间
2011-9-24
在线时间
271 小时
29#
发表于 2013-2-19 14:38:36 | 只看该作者
yangkuanqaz8598 发表于 2013-2-19 11:27
哈哈,今天核心板到了,我也测试一把,一起继续努力继续努力

en ,我还在家里呢
回复 支持 反对

使用道具 举报

48

主题

493

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2947
威望
1774
贡献
469
兑换币
705
注册时间
2012-4-22
在线时间
352 小时
毕业学校
hgd
30#
发表于 2013-3-12 19:29:13 | 只看该作者
yangkuanqaz8598 发表于 2013-2-17 00:25
看了你给的资料后,我貌似懂了点东西,说出看下理解的对不对~

       对于主循环的理解:你需要传输多 ...

这里对DMA有详细描述http://www.znczz.com/forum.php?mod=viewthread&tid=112227
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-25 02:38 , Processed in 0.047734 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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