[经验] 【瑞萨RA4E1评估板】+ADC使用,遇到怪事

流行科技   2023-7-31 15:09 楼主

本来打算今天测试下ADC功能了,结果配置了,没报错,能执行,但就读不出数据,简直奇葩了。

image-20230731150801-1.png  

先查了下原理图,上面电压都有,都对。

image-20230731150801-2.png  

image-20230731150801-3.png  

然后配置ADC选项。就改了下其中的接口,然后就是回调函数,之后中断等级,就结束了。

err = R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg);
if(FSP_SUCCESS != err)
{
while(1);
}
err = R_ADC_ScanCfg(&g_adc0_ctrl, &g_adc0_channel_cfg);
assert(FSP_SUCCESS == err);

 

初始化能过去。

(void) R_ADC_ScanStart(&g_adc0_ctrl);
scan_complete_flag = false;
while (!scan_complete_flag)
{
/* Wait for callback to set flag. */
}
err = R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_0, &adc_data0);
assert(FSP_SUCCESS == err);
a0=(double)(adc_data0/4095.0)*3.3;

 

轮询去读也能转换完成,然后就是里面数据全是空的。

还有看了别人帖子,我发现出现同样的初始化不过去,实际就是外部RTC时钟晶振没连接进去,导致初始化不了,用手按下晶振那块就能过去了,或者使用开发板配置FSP。这样也可以直接过去。

image-20230731150801-4.png  

或者改下硬件即可。短上这两个地方。

回复评论 (3)

数据是空?就是全为0吗?

点赞  2023-7-31 15:27
引用: wangerxian 发表于 2023-7-31 15:27 数据是空?就是全为0吗?

对的,读不到数据

点赞  2023-7-31 15:58

还有看了别人帖子,我发现出现同样的初始化不过去,实际就是外部RTC时钟晶振没连接进去,导致初始化不了,用手按下晶振那块就能过去了,或者使用开发板配置FSP。这样也可以直接过去。

解决问题了吗?

点赞  2023-8-1 06:49
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复