This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP432P401R:具有位带别名地址的 MSP432 DMA

Guru**** 2535540 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/708799/msp432p401r-msp432-dma-with-bit-band-alias-addresses

器件型号:MSP432P401R

您好!

是否可以使用 DMA 写入位带别名地址? 我在这里有一个设置、可以使用 DMA 成功写入 P5->OUT、但将 DMA 目标地址更改为相应的位带别名地址不起作用(P5上的引脚不会改变)。 我已经确保我使用字节访问、并且位带文档指出、它会将逐字节访问转换为外设上的逐字节访问(在这种情况下是需要的)。

是否有通过 DMA 访问设置具有位带地址的 GPIO 引脚的示例?

UDMA 可能无法访问位带区?

感谢您的帮助(&H)、

Andreas

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    BTW、您需要什么? 只能快速切换一个端口引脚? 在一个端口引脚上移出数据?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗯、我想通过 SPI 输出 PCM 音频数据。 我已经编程了一个散聚序列来使 SPI CS 线路生效/失效并通过 SPI 输出16位。 当 DMA 写入 Px->OUT 时、所有8个位都会受到影响。 由于我希望此 SW 模块尽可能通用、因此我只想控制端口上的一个特定位(在本例中为 CS 线路)、这就是我想要使用位带别名的原因。 我在所有其他 GPIO 通信中都非常成功地使用了这种方法。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    有没有 TI 专家可以回答这个问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    安德烈亚斯

     没有使用 DMA 写入位带区的示例。  我不认为 DMA 可以访问包含位带别名的存储器区域。  数据表中有一条语句规定 DMA 只能使用 SRAM 系统空间。  虽然这条语句仅将系统与 SRAM 代码空间进行对比、但根据我的有限实验、如果您尝试使用 DMA 写入位带空间、您应该会看到相同的总线错误。

    此致、

    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的解释、Chris。 就我所记得的、我甚至没有遇到总线错误-程序仍在运行、但无法测量 GPIO 引脚上的任何变化。 将来、我会记住、DMA 和位带地址不能同时使用。
    BR、Andreas