参考此篇文章http://www.deyisupport.com/question_answer/microcontrollers/hercules/f/70/p/145464/410855.aspx 设置使用ADC Group 0(Event)可以成功触发.
参考此篇文章http://www.ti.com/lit/an/spna227/spna227.pdf 设置使用ADC Group 1 SW无法触发.
觉得很疑惑,为何group 1,2会无法触发.
程序设置:
void sysInit(void)
{
hetInit();
initEPWM();
ecapInit();
mibspiInit();
canInit();
gioInit();
gioEnableNotification(gioPORTA, 0);
gioEnableNotification(gioPORTA, 1);
adcInit();
rtiInit();
rtiEnableNotification(rtiNOTIFICATION_COMPARE0);
rtiEnableNotification(rtiNOTIFICATION_COMPARE1);
adcEnableNotification(adcREG1,adcGROUP0);
adcEnableNotification(adcREG1,adcGROUP1);
adcStartConversion(adcREG1,adcGROUP1); //Fail
// adcStartConversion(adcREG1, adcGROUP0); //OK
_enable_interrupt_();
pin_array_Init();
rtiStartCounter(rtiCOUNTER_BLOCK0);
}
检测void rtiNotification(uint32 notification){}
RTI 100us都会进入
检测void adcNotification ( adcBASE_t *adc, uint32 group){}
开启adcStartConversion(adcREG1,adcGROUP1);时不会触发
开启 adcStartConversion(adcREG1, adcGROUP0); 时可以触发
设置都是一样的“Use Alternate ADC “Trigger Option A”
这看起来EVENT vs Group1都很相似, one pass/ one fail 能有一个说明吗?
David Bai1:
Hi Ray,
EVENT Group (or group0) 跟group1和group2还是有差异的,就像你上面提及链接中的spna227.pdf有介绍:
Group0 can only be triggered by an edge on the selected trigger signal, while group1 and group2 are software-triggered by default.Group1 and group2 can also be configured to be edge-triggered. Table 1 summarizes the options for triggering any of the three conversion groups using an edge-trigger signal.
1. 首先你需要在PINMUX中确认一下,你是否勾选了Use Alternate ADC “Trigger Option-A”;
2. 若勾选了OptionA,则需要根据TMS570LS0714数据手册中的MIBADC1 Event Trigger Hookup表,确认Trigger Event Signal中对应的PINMMR30[]的配置是否正确。