TI中文支持网
TI专业的中文技术问题搜集分享网站

CC1310: ADC对RF休眠影响的问题

Part Number:CC1310

为什么执行了ADC初始化之后,执行RF_yield函数会卡死?如下为ADC初始化代码,只要执行了这段代码,在后面射频发送完数据后执行RF_yield,程序就会卡死,请问是什么原因呢?

void Hal_Adc_Init(void)
{    //打开adc时钟
    AUXWUCClockEnable(AUX_WUC_ANAIF_CLOCK);
    AUXWUCClockEnable(AUX_WUC_ADI_CLOCK);    AUXWUCClockEnable(AUX_WUC_ADC_CLOCK);   //选择adc通道和引脚
   AUXADCDisable();
   IOCPortConfigureSet(IOID_9, IOC_PORT_AUX_IO, IOC_STD_INPUT);
   AUXADCSelectInput(ADC_COMPB_IN_AUXIO3);
   //开启adc
   AUXADCEnableSync(AUXADC_REF_VDDS_REL, AUXADC_SAMPLE_TIME_10P6_US, AUXADC_TRIGGER_MANUAL);}

Yolande Wang:

您好,

wei zhang 说: //开启adc   AUXADCEnableSync(AUXADC_REF_VDDS_REL, AUXADC_SAMPLE_TIME_10P6_US, AUXADC_TRIGGER_MANUAL);

尝试关闭 ADC ,执行 RF_yield 函数正常吗?

,

wei zhang:

是的,屏蔽这行代码后,执行 RF_yield 函数是正常的,如果没屏蔽,就会出问题,所以这是什么原因呢

,

Yolande Wang:

可能存在硬件资源冲突,导致执行 RF_yield() 失败。

您可以尝试在执行 RF_yield() 之后,再开启 ADC 。 

,

Yolande Wang:

您好,

经过尝试后,问题解决了吗?

,

Yolande Wang:

请问您为什么使用 the radio driver ,而不使用 SDK 中的 the ADC driver(不是 driverlib)。有理由吗?

,

Yolande Wang:

正常您进行 ADC 初始化是不会影响 RF 核的。

driverlib 中的 ADC 和 Radio Driver 是两种不同的驱动程序,用于不同的硬件模块,在选择上会有一些考量。

,

zhang wei:

后面是在休眠之前加了一句AUXWUCClockDisable(AUX_WUC_ADC_CLOCK), 把ADC时钟关了,休眠之后再打开,才能正常运行

,

Yolande Wang:

感谢反馈,问题解决了就好。

赞(0)
未经允许不得转载:TI中文支持网 » CC1310: ADC对RF休眠影响的问题
分享到: 更多 (0)