在TI的电源库中的F2803x器件(其它没有注意),有ADC_SOC_Cnf.c这个文件。
其中有:
if (mode == 0) // Start-Stop conv mode
{
AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; // clear interrupt flag for ADCINT1
……
if (mode == 2) // CLA mode, Start Stop ADC with auto clr ADC Flag
{
AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; // clear interrupt flag for ADCINT1
……
我对照TI的ADC文档,寄存器ADCINTFLG里面的9个位均为只读。那么AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; 这一句怎么理解呢?
Young Hu:
ADCINTFLG不会自动清除,需要手动去清除。
在TI的电源库中的F2803x器件(其它没有注意),有ADC_SOC_Cnf.c这个文件。
其中有:
if (mode == 0) // Start-Stop conv mode
{
AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; // clear interrupt flag for ADCINT1
……
if (mode == 2) // CLA mode, Start Stop ADC with auto clr ADC Flag
{
AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; // clear interrupt flag for ADCINT1
……
我对照TI的ADC文档,寄存器ADCINTFLG里面的9个位均为只读。那么AdcRegs.ADCINTFLG.bit.ADCINT1 = 0; 这一句怎么理解呢?
TX dong:
回复 Young Hu:
ADCINTFLG是只 读的。向它写入是不起作用的。ADCINTOVFCLR才是用于清除标志的。