主题中讨论的其他器件: C2000WARE
我正在尝试使用 TMS320F28377S 处理器上的 ADC。 我似乎找不到有关 ADC 寄存器的文档。 我尝试了 C2000ware、但它在 html 中列出了寄存器、但并未说明它们的功能或设置方法。 我查看了处理器页面上的技术手册链接、但唯一的 ADC 文档与具有不同寄存器的 F2833x 处理器有关。
- 是否有文档描述了该处理器的 ADC 的详细信息?
- 我想了解转换时间与 AdcaRegs.ADCSOC0CTL.bit.ACQPS 寄存器之间的关系。 如果我将此转换时间设置为非常长以获得平均电压(8us)、是否存在问题?
- 一种替代方法是在我的 ISR 期间收集8个或16个 ADC 样本并对其求平均值。 我已经使用 F28335处理器上的 DMA 和 PWM 时钟完成了这一操作、但我似乎无法弄清楚如何在 F28377上实现这一操作。 F28377处理器的示例代码显示了如何突发 ADC、但我似乎无法知道如何控制时序(除了更改我更喜欢单独保留的转换时间)。 理想情况下、我希望主 ISR 以固定频率运行、并让 ADC 对其进行8倍过采样、获取8个样本、求平均值并在下一个周期使用它们。 我更喜欢一种不涉及使用处理器和第二个 ISR 的方法。 我能否手动触发 ADC 在 ISR 开始时和 ISR 结束时(或在下一个 ISR 开始时)将8个值突发到存储器中、获取这些值并使用它们? 这是如何设置的?
- 如何检测手动转换是否已完成? 我应该检查哪个寄存器?
- 我还注意到、如果我在使用 DAC (以检查我的 ISR 速率)时切换 GPIO0、我会在 DAC 输出上获得明显的噪声。 为什么是这样? 如何解决此问题、以便可以同时使用 DAC 和 GPIO 引脚(噪声与示波器上的 GPIO 转换保持线)?
感谢你的帮助。