电子说
点击左侧Stacks → New Stack → 选择Analog → ADC (SAR) → r_adc:

配置ADC参数,主要设置内部采集通道。
Reference Voltage:Internal Reference Voltage
加入初始化代码:
fsp_err_t adc_init(void) { fsp_err_t err = FSP_SUCCESS; /* 1. 打开ADC模块 */ err = R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg); if(FSP_SUCCESS != err) { printf("ADC打开失败: %drn", err); return err; } /* 2. ADC自校准(关键!必须执行) */ err = R_ADC_SelfCalibrate(&g_adc0_ctrl); if(FSP_SUCCESS != err) { printf("ADC校准失败: %drn", err); R_ADC_Close(&g_adc0_ctrl); return err; } /* 3. 获取ADC初始状态 */ err = R_ADC_StatusGet(&g_adc0_ctrl, &g_adc_status); if(FSP_SUCCESS != err) { printf("获取ADC状态失败: %drn", err); R_ADC_Close(&g_adc0_ctrl); return err; } printf("ADC初始化&校准完成rn"); return err; }

读取电压函数。单次转换。

主函数还要初始化UART,ADC。
UART再去STACK里面配置,这里不过多赘述。配置的时候要注意配置PIN引脚,因为他的引脚有多种功能的重映射,需要自己手动配置。
分配后一定要在全局 Pins 视图验证,确保引脚功能正确映射。
总结
FSP 配置核心:ADC 选内部参考源、启用自校准,UART 配置 115200 波特率并注册回调;
代码核心:ADC 初始化必须先校准,VDDCORE 采集值需 ×2,printf重定向确保串口输出;
关键公式:实际电压 = (ADC 原始值 / 4095)× 参考电压(VDDCORE 需额外 ×2)。
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !