Part Number:TMS320F28388DOther Parts Discussed in Thread:C2000WARE
请教一个关于C2000WARE里28388 AD例程的问题:
C2000WARE的例程<adc_ex5_soc_continuous>
(路径 C:\ti\c2000\C2000Ware_3_04_00_00\driverlib\f2838x\examples\c28x\adc)
里提供的这个连续采样的方式,例程部分代码如下:
while(false == ADC_getInterruptStatus(ADCA_BASE, ADC_INT_NUMBER3)); //这里的应该是判断中断FLAG,决定是否等待还是继续运行
ADC_clearInterruptStatus(ADCA_BASE, ADC_INT_NUMBER3); //清理中断FLAG
读AD结果….
这里面用到了中断相关的芯片资源,但是没有发现中断函数。
我的问题是:是否可以只是使用下这个FLAG,但是不进行实际的中断,而是靠轮询的方式进行开启AD结果读取,看例程好像可以?可以不用产生任何中断(避免打断主函数)吗?
也就是说:AD的触发信号,还是通过epwm触发;但是AD采样窗口结束 end-of-conversion (EOC)判断通过ADC_getInterruptStatus查询中断FLAG形式是否可以,而不通过实际中断,这样可以尽量减少系统中断
谢谢!
Green Deng:
你好,例程也是通过中断触发的,你可以在setupADCContinuous函数中看到具体中断设置。
,
chao huang:
您好!触发AD采样是中断触发的,主要是想问下:AD的读取,例子是通过轮询中断位的方式的,轮询方式正是我所希望的,我主要是担心这个中断标志为会不会启动其他的中断函数,打乱main()?轮询是希望的,主要就是不希望出现中断函数调用的情况。不知道例程是否会产生额外的中断函数,哪怕是空的中断函数进去就return的那种。
谢谢!