直接存储器访问DirectMemoryAccessDMA-Cypress.PDF

直接存储器访问DirectMemoryAccessDMA-Cypress.PDF

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
直接存储器访问DirectMemoryAccessDMA-Cypress

® PSoC Creator™ 组件数据手册 直接存储器访问(Direct Memory Access, DMA) 1.50 特性  24 通道  八个优先级别  128 个数据操作描述符(Transaction Descriptor, TD)  8 位、16 位、32 位数据传输  可配置源和目标地址  支持字节序兼容  数据传输完成后可生成中断  用于协助应用开发的DMA 向导 概述 DMA 组件使数据能传输出入存储器、组件和寄存器。控制器支持8 位宽、16 位宽和32 位宽的数 据传输,并且可以进行配置,以在具有不同字节序的源和目标之间传输数据。能将TD 串接在一起 进行复杂操作。 可根据电平或上升沿信号触发DMA。更多详细信息,请参考硬件要求参数选择。 Cypress Semiconductor Corporation • 198 Champion Court • San Jose, CA 95134-1709 • 408-943-2600 Document number: 001-67955 Rev *A 第1 页,共26 页 PSoC® Creator™ 组件数据手册 直接存储器访问(Direct Memory Access, DMA) 何时使用 DMA 组件 当您要释放CPU 的传输数据任务负担,或者当需要通过可预先设置的可预测方式传输数据时, DMA 组件是很有用的。下面是几种基本的使用案例:  存储器到存储器  存储器到外设  外设到存储器  外设到外设 TD 可以单独执行或者链接在一起以执行复杂的传输。 DMA Wizard (DMA 向导) PSoC Creator 提供了DMA 向导,以帮助快速、精确地开发使用DMA 的应用。向导会全程引导 您定义TD 并生成必需的C 代码 ,您可以将该代码复制并粘贴到您的应用中。 通过PSoC Creator 的Tools (工具)菜单中启动向导。相关详细信息 ,请参见PSoC Creator 帮助。 PSoC 3 Addresses (PSoC 3 地址) 在PSoC 3 中,除闪存外,DMA 传输中涉及的所有位置都在存储器的前64 K 空间中。对于除闪 存之外的所有位置,地址的高 16 位的值必须为0。Keil 编译器无法识别前64 K 空间以外的地 址,而是用高 16 位储存其他信息,导致高位字节不为0。因此,不能直接使用指向该位置指针的 高16 位。更多详细信息,请参见Keil 中的泛型指针。对于闪存而言,地址的高 16 位的使用正确 值为: HI16(CYDEV_FLS_BASE) 这是由编译器完成的具体处理。要创建在PSoC 3 和PSoC 5 中都能够正确运行的代码,可以使 用以下代码格式。假设src 为闪存中的变量,dst 为SRAM 中的变量: #if (defined(__C51__)) /* PSoC 3 - Source is Flash */ dmaChan = DMA_1_DmaInitialize(1, 0, HI16(CYDEV_FLS_BASE), 0); #else Document number: 001-67955 Rev*A 第2 页,共26 页 PSoC® Creator™ 组件数据手册 直接存储器访问(Direct Memory Access, DMA) /* PSoC 5 */ dmaChan = DMA_1_DmaInitialize(1, 0, HI16(src), HI16(dst)); #endif PSoC 5 SRAM Access (访问) 在PSoC 5 中,DMAC 无法从0x1FFF8000 到0x1FFFFFFF 访问SRAM ,但是可以访问同一存

文档评论(0)

wumanduo11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档