打印

DMA 配置疑问

[复制链接]
1310|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
54kim|  楼主 | 2014-5-14 16:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
有个问题:

DMA1的存储器映射地址是 0x4002 0000 -- 0x4002 0400,
为什么有

4.3 DMA 通道x 配置寄存器(DMA_CCRx)(x 代表通道号,x = 1~7)
地址偏移:0x08 + 0d20 × ( x - 1 )


配置寄存器中的地址偏移 0d20 是怎么回事?
沙发
aozima| | 2014-5-14 17:26 | 只看该作者
从公式上来看,每个通道的(所有)寄存器占有 0d20 这么大空间的地址空间。

使用特权

评论回复
板凳
cdshkf| | 2014-5-14 17:34 | 只看该作者
应该是笔误,正确的应该是地址偏移:0x08 + 20 × ( x - 1 )

如图,相邻两个通道的相应寄存器的偏移应该是0x14,也即20个字节的偏移。

DMA.png (71.05 KB )

DMA.png

使用特权

评论回复
地板
54kim|  楼主 | 2014-5-17 09:51 | 只看该作者
的确是偏移 20 byte,只是参考 GD 的手册时看不出这一点,要看 ST 的手册才知道。而且 GD 的手册内容目前只涉及到低容量的,没有涉及到高容量,所以用高容量的要多些谨慎。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

21

帖子

1

粉丝