新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 瑞薩RA0單片機連載?ADC

        瑞薩RA0單片機連載?ADC

        作者:lulugl 時間:2025-06-28 來源:EEPW 收藏


        本文引用地址:http://www.104case.com/article/202506/471811.htm

        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 瑞薩 RA0單片機

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 柏乡县| 张掖市| 广宗县| 杭州市| 乌拉特前旗| 平顺县| 绥江县| 济宁市| 伊宁县| 岢岚县| 梨树县| 井冈山市| 安溪县| 玉林市| 社旗县| 临沭县| 阳信县| 黑龙江省| 苍南县| 宁夏| 广平县| 榆中县| 洱源县| 临海市| 噶尔县| 蛟河市| 仲巴县| 四子王旗| 灵台县| 万荣县| 庆云县| 独山县| 探索| 九江县| 宾阳县| 娄底市| 蓬安县| 都江堰市| 黎平县| 略阳县| 改则县|