91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

瑞薩e2studio----ADC通過單次掃描多通道方式采樣

RA生態(tài)工作室 ? 2021-11-02 16:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

pYYBAGGA3i6Af0z4AABdWrtWoBM374.png

1.概述

本篇文章主要介紹如何使用e2studio對(duì)瑞薩單片機(jī)進(jìn)行Adc通過單次掃描多通道方式采樣。

2.硬件準(zhǔn)備

首先需要準(zhǔn)備一個(gè)開發(fā)板,這里我準(zhǔn)備的是芯片型號(hào) R7FA2L1AB2DFL 的開發(fā)板。

3.新建工程

16000776-2dec-11ec-aa30-dac502259ad0.png

4.工程模板

16754e82-2dec-11ec-aa30-dac502259ad0.png

5.保存工程路徑

16e5803a-2dec-11ec-aa30-dac502259ad0.png

6.芯片配置

本文中使用R7FA2L1AB2DFL來進(jìn)行演示。

1727724c-2dec-11ec-aa30-dac502259ad0.png

7

7.工程模板選擇

17698984-2dec-11ec-aa30-dac502259ad0.png

8.ADC配置

點(diǎn)擊Stacks->New Stack->Driver->Analog -> ADC Driver on r_adc。

179ca7e2-2dec-11ec-aa30-dac502259ad0.png

9.ADC屬性配置

17d0650a-2dec-11ec-aa30-dac502259ad0.png

180922dc-2dec-11ec-aa30-dac502259ad0.png

10.R_ADC_Open()函數(shù)原型

18466f48-2dec-11ec-aa30-dac502259ad0.png

故可以用R_ADC_Open() 函數(shù)進(jìn)行配置,開啟和初始化ADC模式。

	/* Initializes the module. */
    err = R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg);
    /* Handle any errors. This function should be defined by the user. */
    assert(FSP_SUCCESS == err);

11.R_ADC_ScanCfg()函數(shù)原型

18840c0e-2dec-11ec-aa30-dac502259ad0.png

配置ADC掃描參數(shù),賦能ADC通道。在此函數(shù)中設(shè)置通道特定設(shè)置。


	 /* Enable channels. */
    err = R_ADC_ScanCfg(&g_adc0_ctrl, &g_adc0_channel_cfg);
    assert(FSP_SUCCESS == err);

12.R_ADC_ScanStart()函數(shù)原型

18bef292-2dec-11ec-aa30-dac502259ad0.png

啟動(dòng)掃描,若設(shè)置為單次掃描,沒掃描完一次都需要重新開啟。

		/* Enable scan triggering from ELC events. */
        (void) R_ADC_ScanStart(&g_adc0_ctrl);

故可以用R_IOPORT_PinRead()函數(shù)進(jìn)行讀取IO口電平狀態(tài),該函數(shù)只能讀取一個(gè)端口的電平。

bsp_io_level_t p_port_value_port_151;
R_IOPORT_PinRead(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_15, &p_port_value_port_151);

13. 回調(diào)函數(shù)adc_callback ()

每次掃描完之后都會(huì)進(jìn)入回調(diào)函數(shù)中。

volatile bool scan_complete_flag = false;
void adc_callback (adc_callback_args_t * p_args)
{
    FSP_PARAMETER_NOT_USED(p_args);
    scan_complete_flag = true;
}

故需要在掃描時(shí)候在主程序中等待其掃描完畢。


	    scan_complete_flag = false;
        while (!scan_complete_flag)
        {
            /* Wait for callback to set flag. */
        }

14.R_ADC_Read()函數(shù)原型

18ed9a02-2dec-11ec-aa30-dac502259ad0.png

讀取單個(gè)通道的ADC值。

		err =R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_0, &adc_data1);
        assert(FSP_SUCCESS == err);

        a1=(double)(adc_data1/4095.0)*3.3;

15.多通道設(shè)置

以讀取通道0(P000)和通道1 (P010)為例子,通道配置如下。

191798ca-2dec-11ec-aa30-dac502259ad0.png

通道配置要注意通道數(shù),配置錯(cuò)誤可能會(huì)讀取錯(cuò)誤。

195862c4-2dec-11ec-aa30-dac502259ad0.png

16.代碼

volatile bool scan_complete_flag = false;
void adc_callback (adc_callback_args_t * p_args)
{
    FSP_PARAMETER_NOT_USED(p_args);
    scan_complete_flag = true;
} 
void hal_entry(void)
{
    /* TODO: add your own code here */

    fsp_err_t err = FSP_SUCCESS;
    /* Initializes the module. */
    err = R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg);
    /* Handle any errors. This function should be defined by the user. */
    assert(FSP_SUCCESS == err);
 	/* Enable channels. */
    err = R_ADC_ScanCfg(&g_adc0_ctrl, &g_adc0_channel_cfg);
    assert(FSP_SUCCESS == err);

    double a0,a5;
    uint16_t adc_data1=0;
    uint16_t adc_data2=0;
    while(1)
    {

    /* Enable scan triggering from ELC events. */
           (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_data1);
           assert(FSP_SUCCESS == err);
           a0=(adc_data1/4095.0)*3.3;

           err =R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_5, &adc_data1);
           assert(FSP_SUCCESS == err);
           a5=(adc_data1/4095.0)*3.3;

           R_BSP_SoftwareDelay (20, BSP_DELAY_UNITS_MILLISECONDS);
    }

	#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
	#endif
}

17.視頻教學(xué)

視頻教學(xué)稍后會(huì)在B站官方賬號(hào)更新,請(qǐng)留意B站視頻更新~

198d40e8-2dec-11ec-aa30-dac502259ad0.jpg

原文標(biāo)題:瑞薩e2studio----ADC通過單次掃描多通道方式采樣

文章出處:【微信公眾號(hào):RA生態(tài)工作室】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    18934

    瀏覽量

    398497
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    135

    文章

    9554

    瀏覽量

    392036
  • 嵌入式
    +關(guān)注

    關(guān)注

    5199

    文章

    20454

    瀏覽量

    334239
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【RA-Eco-RA2E1-V1.0開發(fā)板試用】概覽、環(huán)境搭建與TTL串口燒錄點(diǎn)燈

    |RA2L1_E1_LQFP48 TOUCH.pdf | +---PPT | 使用J-Link燒寫程序到芯片.pptx | 使用UART串口燒寫程序到
    發(fā)表于 01-31 22:10

    FPB-RA6E2試用】【FPB-RA6E2】 DAC-ADC 回環(huán)測(cè)試:基于 Zephyr RTOS 的模擬信號(hào)通路驗(yàn)證

    Zephyr ADC / DAC API 調(diào)試設(shè)備樹 / pinctrl 校準(zhǔn) ADC / DAC 偏差 硬件 Bring-up 階段測(cè)試 十一、 項(xiàng)目代碼 *附件:fpb_ra6e2_adc_dac_app.zip 感謝電子
    發(fā)表于 01-16 15:22

    RL78/F22 MCU基于e2studio開發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用樣例工程

    RL78/F22 MCU基于e2studio開發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用樣例工程
    的頭像 發(fā)表于 01-14 15:31 ?6077次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>RL78/F22 MCU基于<b class='flag-5'>e2studio</b>開發(fā)環(huán)境創(chuàng)建觸摸應(yīng)用樣例工程

    RA6E2地奇星開發(fā)板試用】開發(fā)板介紹及環(huán)境搭建

    2.0 Full-Speed、CAN FD、I3C、Quad SPI、HDMI CEC、12-bit ADC/DAC 等豐富外設(shè) 二、開發(fā)環(huán)境搭建(推薦 e2 studio + FSP)
    發(fā)表于 12-22 00:40

    RA6E2E2S軟件安裝過程,等待過程玩下97_e2 studio_ZGZZ

    ;amp;vd_source=7ab92f6a337b22fda39554fd6e70f01a 本報(bào)告旨在記錄基于RA6E2 MCU評(píng)估板的初步開發(fā)體驗(yàn)。主要內(nèi)容包括: 軟件開發(fā)環(huán)
    發(fā)表于 12-01 22:42

    RA6E2ADC數(shù)據(jù)采集與數(shù)碼管顯示

    概述 項(xiàng)目簡(jiǎn)介 本報(bào)告基于RA6E2評(píng)估板,實(shí)現(xiàn)了一個(gè)完整的ADC數(shù)據(jù)采集與顯示系統(tǒng)。通過板載ADC
    發(fā)表于 11-27 00:52

    RA6E2ADC、DAC 電壓輸入輸出

    ); 代碼中 dac 的值為 0 ~ 4095,對(duì)應(yīng) 0 ~ 3.3v 電壓 【ADC 電壓輸入】 RA6E2 支持 12 位 ADC
    發(fā)表于 11-10 01:29

    RA6E2】Home Assistant物聯(lián)網(wǎng) ADC 溫度計(jì)

    RA6E2】Home Assistant物聯(lián)網(wǎng) ADC 溫度計(jì) 本文介紹了 RA-Ec
    發(fā)表于 11-03 22:10

    【EK-RA6E2開發(fā)指南】ADC獲取電壓值

    RA6E22個(gè)ADC單元,每個(gè)ADC單元有12位、10位、8位讀取數(shù)據(jù)的格式可以選擇,在單元0上有13個(gè)ADC
    的頭像 發(fā)表于 09-23 18:15 ?2003次閱讀
    【EK-RA6<b class='flag-5'>E2</b>開發(fā)指南】<b class='flag-5'>ADC</b>獲取電壓值

    【RA4E2開發(fā)板評(píng)測(cè)】ADC+DAC

    收到了發(fā)過來的RA4E2開發(fā)板,之前也測(cè)試過相關(guān)的ARM單片機(jī),
    發(fā)表于 09-02 13:35

    RA單片機(jī)在e2 studio環(huán)境下printf編譯出錯(cuò)的問題解析

    最近看到有一些網(wǎng)友在討論關(guān)于:RA單片機(jī)在e2 studio環(huán)境下printf編譯出錯(cuò)的問題。
    的頭像 發(fā)表于 05-24 15:51 ?1588次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>RA單片機(jī)在<b class='flag-5'>e2</b> <b class='flag-5'>studio</b>環(huán)境下printf編譯出錯(cuò)的問題解析

    【RA-Eco-RA4M2開發(fā)板評(píng)測(cè)】初學(xué)-使用flash programmer燒錄程序

    本人剛?cè)肟硬痪?,?duì)單片機(jī)的熱情很高,于是也加入了的板子申請(qǐng)隊(duì)伍,很榮幸也成為了試用者之一,此前對(duì)于的板子從未接觸過,包括對(duì)于使用e2stud
    發(fā)表于 04-29 17:28

    RA2L1入門學(xué)習(xí)】+e2_studio軟件安裝及使用

    一、e2_studio軟件安裝及使用 注冊(cè)e2 studio | Renesas 電子 下載軟件 安裝 4.創(chuàng)建工程 更改工程位置 新
    發(fā)表于 03-27 13:25

    e2studio和Keil簡(jiǎn)介及如何安裝e2studio開發(fā)環(huán)境

    (簡(jiǎn)稱為e2e2s)是電子的一款包含代碼開發(fā)、構(gòu)建和調(diào)試的開發(fā)工具。e2studio基于開
    的頭像 發(fā)表于 03-13 17:27 ?3238次閱讀
    <b class='flag-5'>e</b>2<b class='flag-5'>studio</b>和Keil簡(jiǎn)介及如何安裝<b class='flag-5'>e</b>2<b class='flag-5'>studio</b>開發(fā)環(huán)境

    **RA2L1入門學(xué)習(xí)】+**UART測(cè)試實(shí)驗(yàn)

    RA2L1入門學(xué)習(xí)】+UART測(cè)試實(shí)驗(yàn) 本篇文章主要介紹如何使用e2studio對(duì)單片
    發(fā)表于 03-09 15:45