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.

[参考译文] TMS320F280049M:异步读取 ADCRESULT 寄存器是否正常?

Guru**** 2589280 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/663957/tms320f280049m-are-asynchronous-reads-of-adcresult-registers-ok

器件型号:TMS320F280049M

我的应用是使用 ePWM 通道来触发周期性 ADC 转换。  有些结果的移动速度很慢、因此我想在主应用需要这些值时直接从 ADCRESULT 寄存器中读取这些结果、而不是使用中断服务例程将这些结果移动到 RAM 存储中。  我是否应该对 ADC 模块和 CPU/CLA 之间的冲突有任何疑问?  我的主要问题是、如果 ADC 模块在 CPU/CLA 尝试读取同一寄存器的同时将结果移动到 ADCRESULT 寄存器中、会发生什么情况。  谢谢。

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

    您可以通过异步方式读取结果。 放置它们。 当您可以读取无效结果时、没有任何"设置时间"-一个周期将读取旧结果、但下一个周期的读取将读取更新后的结果。 结果寄存器实际上也是多映射的、这样 CPU、CLA 和 DMA 都可以在无仲裁/等待状态的情况下同时读取结果。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢!