主题中讨论的其他器件:C2000WARE
我想将 ADC 通道配置为由外部 GPIO 触发转换开始。 我知道我需要将 GPIO 路由到输入 X-BAR INPUT5。 我已将引脚编号 74 (GPIO5)路由到 X-BAR 输入5、如下所示:
Xbar_setInputPin (INPUTXBAR_BASE、XBAR_INPUT5、5);
Xbar_lockInput (INPUTXBAR_BASE、XBAR_INPUT5);
SOC 配置为使用 GPIO5作为外部 ADC 触发源、如下所示:
//为 ADCIN6配置 SOC。 它将由 GPIO、ADCEXTSOC 触发
ADC_setupSOC (ADCA_BASE、ADC_SOC_NUMBER8、ADC_TRIGGER_GPIO、
ADC_CH_ADCIN6、8);
当 ADC 转换完成时、将产生一个中断:
//配置转换中断 完成
ADC_setInterruptSource (ADCA_BASE、ADC_INT_NUMBER2、ADC_SOC_NUMBER8);
ADC_enableInterrupt (ADCA_BASE、ADC_INT_NUMBER2);
ADC_clearInterruptStatus (ADCA_BASE、ADC_INT_NUMBER2);
最后在主函数中启用中断、如下所示:
INTERRUPT_ENABLE (INT_ADCA2);
为了测试转换是否完成、我在 ISR 中切换了一个 LED。 由于某种原因、SOC 不会被外部 GPIO 触发或不会生成中断。 代码中配置了一些其他正在工作的中断、因此我假设全局中断已启用。 我想 C2000Ware 中没有外部 GPIO 触发 SOC 的示例。 请提供指导