伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

瑞薩RA系列FSP庫開發實戰指南之ADC電位器電壓采集實驗

瑞薩嵌入式小百科 ? 來源:野火電子 ? 2026-04-08 14:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

25.6

實驗:電位器電壓采集

25.6.1

硬件設計

野火啟明6M5開發板的ADC電位器電路圖如下圖所示。

ba220030-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

野火啟明4M2開發板的ADC電位器電路圖如下圖所示。

ba78688a-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

野火啟明2L1開發板的ADC電位器電路圖如下圖所示。

bace1da2-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

可以看到,三塊開發板板載的電位器都是連接到P000引腳,P000引腳可以連接到MCU內部的ADC外設,從而對電位器輸入的模擬信號進行采集。

表3:ADC引腳

bb24e812-2f12-11f1-90a1-92fbcf53809c.png

25.6.2

軟件設計

25.6.2.1

新建工程

對于e2studio開發環境:拷貝一份我們之前的e2s工程“19_UART_Receive_Send”,然后將工程文件夾重命名為“25_ADC”,最后再將它導入到我們的e2studio工作空間中。

對于Keil開發環境:拷貝一份我們之前的Keil工程“19_UART_Receive_Send”,然后將工程文件夾重命名為“25_ADC”,并進入該文件夾里面雙擊Keil工程文件,打開該工程。

工程新建好之后,在工程根目錄的“src”文件夾下面新建“key”文件夾,再進入“key”文件夾里面新建源文件和頭文件:“bsp_adc.c”和“bsp_adc.h”。工程文件結構如下。

列表1:文件結構

左右滑動查看完整內容

25_ADC
├─ ......
└─src
├─ led
│ ├─ bsp_led.c
│ └─ bsp_led.h
├─ debug_uart
│ ├─ bsp_debug_uart.c
│ └─ bsp_debug_uart.h
├─ adc
│ ├─ bsp_adc.c
│ └─ bsp_adc.h
└─ hal_entry.c

25.6.2.2

FSP配置

打開該工程的FSP配置界面進行配置。

首先依次點擊“Stacks”->“Pins”->“Peripherals”->“ADC0”來配置通道AN000對應的引腳為P000。如下圖所示。

bbd4d7fe-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

然后依次點擊“Stacks”->“New Stack”->“Analog”->“ADC (r_adc)”來配置ADC模塊。如下圖所示。

bc2cdb20-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

ADC的屬性配置:

bc89a8e6-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

表4:ADC屬性介紹

bce6b1a8-2f12-11f1-90a1-92fbcf53809c.png

點擊可查看大圖

配置完成之后可以按下快捷鍵“Ctrl+S”保存,最后點右上角的“Generate Project Content”按鈕,讓軟件自動生成配置代碼即可。

25.6.2.3

ADC初始化函數

列表2:代碼清單25?1 ADC初始化函數

左右滑動查看完整內容

voidADC_Init(void)
{
fsp_err_t err;
err =R_ADC_Open(&g_adc0_ctrl, &g_adc0_cfg);
err =R_ADC_ScanCfg(&g_adc0_ctrl, &g_adc0_channel_cfg);
assert(FSP_SUCCESS== err);
}

R_ADC_Open()為整個外設設置操作模式、觸發源、中斷優先級和配置。如果啟用了中斷,該函數將注冊一個回調函數指針,以便在掃描完成時通知用戶。

R_ADC_ScanCfg()配置ADC掃描參數。通道特定設置是在這個函數中設置的。

25.6.2.4

ADC中斷回調函數

列表3:代碼清單25?2 ADC中斷回調函數

左右滑動查看完整內容

//ADC 轉換完成標志位
volatilebool scan_complete_flag =false;
voidadc_callback(adc_callback_args_t * p_args)
{
FSP_PARAMETER_NOT_USED(p_args);
scan_complete_flag =true;
}

在FSP配置頁面注冊回調函數以及優先級,我們就可以使用來自ADC的中斷回調函數了。

在每種模式中,模擬通道按通道數的升序進行轉換,然后掃描溫度傳感器和電壓傳感器(如果它們也被勾選了的話)。每一種掃描模式都有著它的優點和缺點,但具體使用什么模式進行ADC轉換,就需要通過我們的項目的需求需要什么樣的效果來決定。

我們通過ADC的中斷回調函數來判斷ADC是否轉換完成。我們需要定義了一個布爾類型的數據scan_complete_flag來當做ADC讀取完成的標志位。當沒有轉換完成的時候scan_complete_flag的值一直為false,單ADC觸發中斷的時候將scan_complete_flag的值變為true。

25.6.2.5

如果未啟用中斷

如果未啟用中斷,則可使用R_ADC_StatusGet()API用于輪詢ADC以確定掃描何時完成。讀取API函數用于訪問轉換后的ADC結果。這適用于支持校準的MCU的普通掃描和校準掃描。

25.6.2.6

ADC讀取轉換結果函數

ADC讀取思路,我們在這里調用R_ADC_ScanStart觸發相應的adc通道轉換,當ADC轉換完成之后會將scan_complete_flag標志位變為true。當我們判斷到標志位變為true后我們使用R_ADC_Read()或R_ADC_Read32()讀取轉換完成的數值。

列表4:代碼清單25?3 ADC讀取轉換結果函數

左右滑動查看完整內容

/* 進行ADC 采集,讀取ADC 數據并轉換結果*/
doubleRead_ADC_Voltage_Value(void)
{
uint16_tadc_data;
doublea0;
(void)R_ADC_ScanStart(&g_adc0_ctrl);
while(!scan_complete_flag)//等待轉換完成標志
{
;
}
scan_complete_flag =false;//重新清除標志位
/* 讀取通道0 數據*/
R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_0, &adc_data);
/* ADC 原始數據轉換為電壓值(ADC 參考電壓為3.3V) */
a0 = (double)(adc_data*3.3/4095);
returna0;
}

R_ADC_ScanStart()啟動軟件掃描或啟用掃描的硬件觸發器,具體取決于觸發器在R_ADC_Open調用中的配置方式。如果該單元被配置為ELC或外部硬件觸發,那么該功能允許觸發信號到達ADC單元。該函數不能控制觸發器本身的生成。如果該單元被配置為軟件觸發,則該功能啟動軟件觸發掃描。

R_ADC_Read()從單通道或傳感器寄存器讀取轉換結果,返回的數據為uint16_t型。

R_ADC_Read32()從單通道或傳感器寄存器讀取轉換結果,返回的數據為uint32_t型。

25.6.2.7

hal_entry入口函數

列表5:代碼清單25?4 hal_entry入口函數

左右滑動查看完整內容

voidhal_entry(void)
{
LED_Init();// LED 初始化
Debug_UART4_Init();// SCI4 UART 調試串口初始化
/* ADC 初始化*/
ADC_Init();
printf("這是一個讀取電位器ADC 電壓轉換值的例程
");
printf("打開串口助手查看ADC 轉換結果,旋鈕電位器,可以看到ADC 值在一定范圍之內發生
變化
");
printf("開始讀取ADC 轉換值:
");
while(1)
{
printf("a0 = %f
",Read_ADC_Voltage_Value());
R_BSP_SoftwareDelay(500,BSP_DELAY_UNITS_MILLISECONDS);//大概0.5 秒鐘
讀取一次
LED1_TOGGLE;
}
#ifBSP_TZ_SECURE_BUILD
/* Enter non-secure code */
R_BSP_NonSecureEnter();
#endif
}

25.6.3

下載驗證

USBTYPE-C線連接開發板“USB TO UART”接口電腦,在電腦端打開串口調試助手,把編譯好的程序下載到開發板。在串口調試助手可看到從ADC引腳讀出的模擬電壓數值。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電位器
    +關注

    關注

    14

    文章

    1030

    瀏覽量

    69423
  • adc
    adc
    +關注

    關注

    100

    文章

    7882

    瀏覽量

    556694
  • 瑞薩
    +關注

    關注

    37

    文章

    22506

    瀏覽量

    91079
  • 電壓采集
    +關注

    關注

    2

    文章

    26

    瀏覽量

    14732

原文標題:ADC電壓值轉換&實驗:電位器電壓采集——瑞薩RA系列FSP庫開發實戰指南(93)

文章出處:【微信號:瑞薩嵌入式小百科,微信公眾號:瑞薩嵌入式小百科】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RA系列FSP開發實戰指南I2C讀寫EEPROM實驗

    使用官方提供的FPS進行編程,官方提供的FPS具有方便、快捷、簡潔的特性。
    的頭像 發表于 01-27 10:02 ?3651次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>庫</b><b class='flag-5'>開發</b><b class='flag-5'>實戰</b><b class='flag-5'>指南</b><b class='flag-5'>之</b>I2C讀寫EEPROM<b class='flag-5'>實驗</b>

    RA MCU眾測寶典 | ADC/DACRA2L1】DAC電壓輸出及ADC電壓采集實驗

    “RAMCU眾測寶典”ADC/DAC通信專題上線啦!咱們接下來要解鎖嵌入式開發中“連接模擬與數字世界”的關鍵技能——ADC/DAC專題。這次,
    的頭像 發表于 01-20 18:43 ?5410次閱讀
    <b class='flag-5'>RA</b> MCU眾測寶典 | <b class='flag-5'>ADC</b>/DAC<b class='flag-5'>之</b>【<b class='flag-5'>RA</b>2L1】DAC<b class='flag-5'>電壓</b>輸出及<b class='flag-5'>ADC</b><b class='flag-5'>電壓</b><b class='flag-5'>采集</b><b class='flag-5'>實驗</b>

    e2studio(1)----芯片搭建FSP環境

    視頻教學 樣品申請 請勿添加外鏈 e2studio軟件 e2studio是的集成開發環境,FSP 提供了眾多可提高效率的工具,用于開發
    發表于 09-30 15:28

    RA6E2地奇星開發板試用】DAC 輸出指定電壓ADC 電壓檢測

    ); 代碼中 dac 的值為 0 ~ 4095,對應 0 ~ 3.3v 電壓ADC 電壓輸入】
    發表于 12-19 18:30

    RA6E2地奇星開發板試用】開發板介紹及環境搭建

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

    RA4系列開發板體驗】開發環境搭建和新手點燈指南

    RA4系列開發板體驗】開發環境搭建和新手點燈指南
    發表于 11-24 22:54

    RA4系列開發板體驗】ADC電壓測量

    RA4M2集成了● 12-bit A/D Converter (ADC12)● 12-bit 及溫度傳感(TSN)。可以8位、10位、
    發表于 12-02 07:00

    RA4系列開發板體驗】6. ADC測量搖桿模塊偏移量

    之前發帖:【RA4系列開發板體驗】1. 新建工程+按鍵控制LED【
    發表于 12-09 21:37

    RA4系列開發板體驗】10. 我的試用總結

    KEIL下UART實現printf與scanf重定向【RA4系列開發板體驗】4. PWM驅動LED【
    發表于 12-10 22:34

    RA4系列開發板體驗】體驗過程

    拿到板子之后,做了幾個實驗過程,過程如下:1、在好奇心驅動下,逐步接觸;參照網上的實例,學習開發環境一、開箱驗貨二、搭建環境參考“ 【
    發表于 12-18 16:20

    【野火啟明6M5開發板體驗】開箱+認識開發板+資料

    按鍵檢測29. WiFi——模塊通訊板尺寸:3、資料:*附件:[野火EmbedFire]《RA系列FSP
    發表于 12-20 23:28

    【有獎直播預報名】電子RA系列產品開發工具FSP4.0.0新特性介紹

    為使用電子RA系列ARM微控制的嵌入式系統設計提供簡單易用且可擴展的高質量軟件。 直播主題
    的頭像 發表于 11-22 12:20 ?1639次閱讀

    【視頻教程】RA單片機FSP開發(3)FSP架構-解釋Blinky架構[上]

    干貨分享 前篇回顧 【視頻教程】RA單片機FSP開發(1)環境搭建(帶RASC) 【視頻教程】
    的頭像 發表于 12-06 12:15 ?2059次閱讀

    使用e2 studio FSP基于RA2E1定時配置PWM輸出

    使用e2 studio FSP基于RA2E1定時配置PWM輸出
    的頭像 發表于 08-01 00:13 ?2171次閱讀
    使用<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>e2 studio <b class='flag-5'>FSP</b>基于<b class='flag-5'>RA</b>2E1定時<b class='flag-5'>器</b>配置PWM輸出

    電子RA系列微控制的可擴展性強的配置軟件包 (FSP)安裝下載與使用指南

    電子RA系列微控制的可擴展性強的配置軟件包 (FSP)安裝下載與使用
    的頭像 發表于 06-11 17:21 ?2090次閱讀