瑞萨RA0单片机连载⸺ADC

  作者:lulugl 时间:2025-06-28来源:EEPW


1   目的

本篇主要实现面向对象的对驱ADC,使用电位容调节电压,采集实时电压并在OLED屏上实时展示。

2   实验器材

1.瑞萨生态社区RA0E1开发板:

1751096348126636.png

2.OLED 显示屏

3.电位器

3   软件环境

1.MDK5.39

2.FSP 5.3.0

3.RASC

4   实现步骤

1.打开RASC,选择FSP 5.3.0(最少选择5.2.0版本以上)。

2.配置P014为ADC Analog mode 为通道6即ADC0_AN006:

1751096453254260.png

3.新建stack,添加g_adc0_ADC,并按下图置为通道6,软件触发转换,开启转换结果中断触发,参考电压为MCU的VSS与VCC,即3.3V

1751096500806608.png

4.向工程中添加drv_adc函数。

image.png

1751267334935521.png

image.png

此函数中主要是把adc0_CHANNEL_6配置成ptDev,对外开放的接口。我们只需要初始化ADCDev后,就可以通过他的init、read、value来做接口访问就行了。

4.在主函数中我们初始化ADC并读取ADC值,显示于OLED屏上:

view plaincopy to clipboardprint?

1.ADCDevTypeDef *ptAdcDev = ADCGetDevice(); // 生成ADC对象

2.    if(NULL == ptAdcDev)

3.    {

4.        printf(“Error. Not found ADC device!rn”);

5.        return;

6.    }

7.ptAdcDev->Init(ptAdcDev); // 初始化

8.//在while循环中读取,并显示

9.if(!ptAdcDev->Read(ptAdcDev))

10.    {

11.       a0=(ptAdcDev->value/4095.0)*3.3;

12.       sprintf(sprintfbuff ,”ADC:%d, %d.%d”,ptAdcDev->value, (int)a0, (int)(a0*1000)%1000);

13.       ptDispDev->GUI_ShowString(ptDispDev,0,48, sprintfbuff ,16,1);

          }

5   实现效果

将P014接于可变电位器的输出IO,可以实时测量到电压:

1751096648311196.png

(本文来源于《EEPW》202506)

关键词: 202506 瑞萨 RA0单片机

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版