chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

【干貨分享】在 RA-Eco-RA6M4開發(fā)板上實(shí)現(xiàn) ADC 電壓的 LabVIEW 數(shù)據(jù)采集

電子發(fā)燒友論壇 ? 2025-08-21 08:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文介紹了 RA-Eco-RA6M4-100PIN-V1.0 開發(fā)板通過 LabVIEW 上位機(jī)實(shí)現(xiàn) ADC 電壓數(shù)據(jù)采集的項(xiàng)目設(shè)計(jì),采用串口發(fā)送和串口中斷查詢兩種方案。
https://bbs.elecfans.com/jishu_2496332_1_1.html


RA-Eco-RA6M4-100PIN-V1.0開發(fā)板,主控芯片為R7FA6M4AF3CFP。 瑞薩電子 RA6M4 微控制器 (MCU) 產(chǎn)品群使用了支持 TrustZone 的高性能 Arm Cortex-M33 內(nèi)核。與片內(nèi)的 Secure Crypto Engine(SCE) 配合使用,可提供安全芯片的功能。集成帶有專用 DMA以太網(wǎng) MAC,可確保高數(shù)據(jù)吞吐率。RA6M4 采用高效的 40nm 工藝,由基于 FreeRTOS 的靈活配置軟件包 (FSP) 這一開放且靈活的生態(tài)系統(tǒng)概念提供支持,并能夠擴(kuò)展以使用其他實(shí)時(shí)操作系統(tǒng)(RTOS)和中間件。RA6M4 適用于物聯(lián)網(wǎng)應(yīng)用的需求,如以太網(wǎng)、面向未來應(yīng)用的安全功能、大容量嵌入式 RAM 和較低功耗(從閃存運(yùn)行 CoreMark 算法,低至 99μA/MHz)。


一、項(xiàng)目介紹

開發(fā)板工程調(diào)試:串口輸出 JSON 格式的 ADC 值及其電壓轉(zhuǎn)換值;

LabVIEW 上位機(jī)設(shè)計(jì):包括前面板和程序框圖的設(shè)計(jì)等;

LabVIEW 測試與程序優(yōu)化:通過串口獲取芯片發(fā)送的 ADC 數(shù)據(jù),提高響應(yīng)速度、減小延遲;

使用串口中斷方案實(shí)現(xiàn) ADC 數(shù)值和電壓數(shù)據(jù)的采集,以及相應(yīng)的 LabVIEW 上位機(jī)設(shè)計(jì)。


二、工程調(diào)試

在前面完成 UART 串口輸出 ADC 數(shù)值和電壓轉(zhuǎn)換數(shù)值的基礎(chǔ)上,修改輸出格式為 JSON,關(guān)鍵代碼如下

#include"hal_data.h"FSP_CPP_HEADERvoidR_BSP_WarmStart(bsp_warm_start_event_tevent);FSP_CPP_FOOTERfsp_err_terr = FSP_SUCCESS;volatilebooluart_send_complete_flag =false;voiduser_uart_callback(uart_callback_args_t* p_args){ if(p_args->event == UART_EVENT_TX_COMPLETE) { uart_send_complete_flag =true; }}/*------------- UART redirection printf -------------*/#ifdef__GNUC__ #definePUTCHAR_PROTOTYPE int __io_putchar(int ch)#else#endifPUTCHAR_PROTOTYPE{ err =R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t*)&ch,1); if(FSP_SUCCESS != err) __BKPT(); while(uart_send_complete_flag ==false){} uart_send_complete_flag =false; returnch;}int_write(intfd,char*pBuffer,intsize){ for(inti=0;i { __io_putchar(*pBuffer++); } returnsize;}/*------------- ADC callback -------------*/volatileboolscan_complete_flag =false;voidadc_callback(adc_callback_args_t* p_args){ FSP_PARAMETER_NOT_USED(p_args); scan_complete_flag =true;}voidhal_entry(void){ /*TODO:add your own code here */ /* Open the transfer instance with initial configuration. */ err =R_SCI_UART_Open(&g_uart9_ctrl, &g_uart9_cfg); assert(FSP_SUCCESS == err); //printf("hello world!\n"); /* 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); while(1) { uint16_tadc_data0=0; doublea0;// define voltage value /* 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_data0); assert(FSP_SUCCESS == err); a0 = (double)(adc_data0/4095.0)*3.3;// define voltage formula //printf("P000(AN0)=%d,voltage=%f\n",adc_data0,a0); printf("{"value": %d, "voltage": %f}\n",adc_data0,a0); R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS); }#ifBSP_TZ_SECURE_BUILD /* Enter non-secure code */ R_BSP_NonSecureEnter();#endif}

保存文件,右鍵項(xiàng)目 - 構(gòu)建程序,

右鍵項(xiàng)目 - 調(diào)試項(xiàng)目 - 上傳固件至開發(fā)板。


串口測試

  • TypeC - USB 數(shù)據(jù)線連接開發(fā)板串口和電腦;
  • 打開串口調(diào)試助手,配置對應(yīng)的波特率等參數(shù);
  • 打開串口,即可接收芯片發(fā)送的字符串

9cc84374-7e22-11f0-9080-92fbcf53809c.jpg

此時(shí)串口輸出數(shù)據(jù)為標(biāo)準(zhǔn) JSON 格式,便于后續(xù) LabVIEW 數(shù)值讀取。


三、LabVIEW 上位機(jī)

包括前面板設(shè)計(jì)、程序框圖設(shè)計(jì)兩部分。

前面板

9cd35ef8-7e22-11f0-9080-92fbcf53809c.jpg

使用方法

  • 串口配置:端口號、波特率等;
  • 單擊運(yùn)行按鈕,設(shè)置文件保存路徑;
  • 點(diǎn)擊 START 按鈕,開始連續(xù)采集數(shù)據(jù);
  • 采集完成后,點(diǎn)擊 STOP 按鈕結(jié)束程序,數(shù)據(jù)自動保存至設(shè)定路徑文件。

程序框圖

9ce2e6a2-7e22-11f0-9080-92fbcf53809c.jpg

連續(xù)采集

連續(xù)采集

9cf7fc72-7e22-11f0-9080-92fbcf53809c.jpg

動態(tài)效果見底部視頻。

數(shù)據(jù)保存

點(diǎn)擊 Stop 按鈕,停止數(shù)據(jù)采集,文件自動保存至預(yù)設(shè)路徑,3 列數(shù)據(jù)依次為日期-時(shí)間-數(shù)值

9d03bc56-7e22-11f0-9080-92fbcf53809c.jpg


四、串口中斷

除了上述串口不間斷發(fā)送數(shù)據(jù)的方案,還可以使用串口中斷實(shí)現(xiàn) ADC 數(shù)據(jù)的自動采集。

工程代碼

#include"hal_data.h"FSP_CPP_HEADERvoidR_BSP_WarmStart(bsp_warm_start_event_tevent);FSP_CPP_FOOTERfsp_err_terr = FSP_SUCCESS;volatilebooluart_send_complete_flag =false;volatilebooluart_receive_complete_flag =false;uint8_tuart_rx_buffer[3] = {0};// storage the received ordersvoiduser_uart_callback(uart_callback_args_t* p_args){ if(p_args->event == UART_EVENT_TX_COMPLETE) { uart_send_complete_flag =true; } elseif(p_args->event == UART_EVENT_RX_COMPLETE) { uart_receive_complete_flag =true; }}/*------------- UART redirection printf -------------*/#ifdef__GNUC__ #definePUTCHAR_PROTOTYPE int __io_putchar(int ch)#else#endifPUTCHAR_PROTOTYPE{ err =R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t*)&ch,1); if(FSP_SUCCESS != err) __BKPT(); while(uart_send_complete_flag ==false){} uart_send_complete_flag =false; returnch;}int_write(intfd,char*pBuffer,intsize){ for(inti=0;i { __io_putchar(*pBuffer++); } returnsize;}/*------------- ADC callback -------------*/volatileboolscan_complete_flag =false;voidadc_callback(adc_callback_args_t* p_args){ FSP_PARAMETER_NOT_USED(p_args); scan_complete_flag =true;}voidhal_entry(void){ /*TODO:add your own code here */ /* Open the transfer instance with initial configuration. */ err =R_SCI_UART_Open(&g_uart9_ctrl, &g_uart9_cfg); assert(FSP_SUCCESS == err); // start interrupt err =R_SCI_UART_Read(&g_uart9_ctrl, uart_rx_buffer,3); assert(FSP_SUCCESS == err); /* 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); while(1) { uint16_tadc_data0=0; doublea0;// define voltage value // check if receive order if(uart_receive_complete_flag) { uart_receive_complete_flag =false; // check if `55 AA 10` or `55 AA 11` if(uart_rx_buffer[0] ==0x55&& uart_rx_buffer[1] ==0xAA) { /* 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_data0); assert(FSP_SUCCESS == err); a0 = (double)(adc_data0/4095.0)*3.3;// define voltage formula if(uart_rx_buffer[2] ==0x10)// send ADC value { printf("%d\n", adc_data0); } elseif(uart_rx_buffer[2] ==0x11)// send ADC voltage { printf("%f\n", a0); } } // restart UART receive err =R_SCI_UART_Read(&g_uart9_ctrl, uart_rx_buffer,3); assert(FSP_SUCCESS == err); } R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS); }#ifBSP_TZ_SECURE_BUILD /* Enter non-secure code */ R_BSP_NonSecureEnter();#endif}

保存文件,右鍵項(xiàng)目 - 構(gòu)建程序,

右鍵項(xiàng)目 - 調(diào)試項(xiàng)目 - 上傳固件至開發(fā)板。


五、測試

使用串口調(diào)試助手測試串口中斷響應(yīng)。

分別以十六進(jìn)制發(fā)送查詢代碼55 AA 10和55 AA 11分別獲取 ADC 數(shù)值和相應(yīng)的電壓值。

9d177d0e-7e22-11f0-9080-92fbcf53809c.jpg

LabVIEW 上位機(jī)

基于上述串口中斷查詢的項(xiàng)目,設(shè)計(jì)了對應(yīng)的 LabVIEW 上位機(jī)程序,便于自動化數(shù)據(jù)采集。

前面板

前面板設(shè)計(jì)包括串口配置、ADC 數(shù)值和電壓的表盤顯示、演化曲線圖、控制按鈕、數(shù)據(jù)保存配置等模塊。

9d28b0ec-7e22-11f0-9080-92fbcf53809c.jpg

程序框圖

9d3574f8-7e22-11f0-9080-92fbcf53809c.jpg

操作方法

  • 串口配置:端口號、波特率等;
  • 單擊運(yùn)行按鈕,設(shè)置文件保存路徑;
  • 點(diǎn)擊 START 按鈕,開始連續(xù)采集數(shù)據(jù);
  • 采集完成后,點(diǎn)擊 STOP 按鈕結(jié)束程序,數(shù)據(jù)自動保存至設(shè)定路徑文件;
    • 再次點(diǎn)擊 START 重新采集數(shù)據(jù);
    • 點(diǎn)擊 Terminate 按鈕終止上位機(jī)程序。



六、總結(jié)

本文介紹了 RA-Eco-RA6M4-100PIN-V1.0 開發(fā)板通過 LabVIEW 上位機(jī)實(shí)現(xiàn) ADC 電壓數(shù)據(jù)采集的項(xiàng)目設(shè)計(jì),采用串口發(fā)送和串口中斷查詢兩種方案,包括項(xiàng)目介紹、工程調(diào)試、串口打印 JSON 測試、LabVIEW 上位機(jī)設(shè)計(jì)、程序測試及調(diào)優(yōu)等,為 Renesas 系列產(chǎn)品的開發(fā)設(shè)計(jì)和工業(yè)科研等領(lǐng)域的應(yīng)用提供了參考。



9d452164-7e22-11f0-9080-92fbcf53809c.png

聲明:本文由電子發(fā)燒友社區(qū)發(fā)布,轉(zhuǎn)載請注明以上來源。如需平臺(包括:試用+專欄+企業(yè)號+學(xué)院+技術(shù)直播+共建社區(qū))合作及入群交流,請咨詢18925255684(微信同號:elecfans123),謝謝!

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

    關(guān)注

    2009

    文章

    3679

    瀏覽量

    342171
  • adc
    adc
    +關(guān)注

    關(guān)注

    100

    文章

    6812

    瀏覽量

    552058
  • 數(shù)據(jù)采集
    +關(guān)注

    關(guān)注

    40

    文章

    7511

    瀏覽量

    118886
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5999

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    RA-Eco-RA4M2開發(fā)板評測】ADC采集數(shù)據(jù)OLED輸出

    RA-Eco-RA4M2開發(fā)板評測】ADC采集數(shù)據(jù)OLED輸出 本次實(shí)驗(yàn)要實(shí)現(xiàn)使用瑞薩 R7FA4
    發(fā)表于 04-16 21:19

    RA-Eco-RA6M4開發(fā)板評測】——2.串口打印

    ;delay_ms(200);LED3_OFF; printf(\"歡迎試用瑞薩電子RA-Eco-RA6M4開發(fā)板評測\\\\r\\\\n\"); printf(\"摒棄
    發(fā)表于 07-16 13:20

    RA-Eco-RA6M4開發(fā)板評測】+初識篇

    RA-Eco-RA6M4開發(fā)板是一款基于 Arm? Cortex?-M33 內(nèi)核的開發(fā)工具,且具有1MB 閃存、192kB支持奇偶校驗(yàn) SRAM 以及64kb ECC SRAM。 該
    發(fā)表于 07-16 19:06

    RA-Eco-RA6M4開發(fā)板評測】+01+開箱測評+UART+PWM+LED

    、開箱 RA-Eco-RA6M4開發(fā)板RA-Eco-RA4E2-64PIN-V1.0開發(fā)板同框PK。開發(fā)板廠家還是一如既往的吝嗇,
    發(fā)表于 07-17 23:43

    RA-Eco-RA6M4開發(fā)板評測】1、開發(fā)環(huán)境搭建和串口打印信息

    中,配置下載算法和RAM空間設(shè)置,RAM空間的參數(shù)設(shè)置可以通過查看數(shù)據(jù)手冊中的地址空間分布來確定。 下載到開發(fā)板后,效果如下。 總結(jié) RA-Eco-RA6M4開發(fā)板配合e2stu
    發(fā)表于 07-22 22:45

    RA-Eco-RA6M4開發(fā)板評測】介紹、環(huán)境搭建、工程測試

    RA-Eco-RA6M4開發(fā)板評測】介紹、環(huán)境搭建、工程測試 本文介紹了 RA-Eco-RA6M4-100PIN-V1.0 開發(fā)板的基本信息,包括產(chǎn)品特點(diǎn)、參數(shù)資源、
    發(fā)表于 07-25 11:48

    RA-Eco-RA6M4開發(fā)板評測】ADC 電壓

    RA-Eco-RA6M4開發(fā)板評測】ADC 電壓表 本文介紹了 RA-Eco-RA6M4-100PIN-V1.0
    發(fā)表于 07-25 12:33

    RA-Eco-RA6M4開發(fā)板評測】ADC 電壓LabVIEW 數(shù)據(jù)采集

    RA-Eco-RA6M4開發(fā)板評測】ADC 電壓LabVIEW 數(shù)據(jù)采集 本文介紹了
    發(fā)表于 07-26 11:07

    RA-Eco-RA6M4開發(fā)板評測】——8.獲取RA6M4開發(fā)板芯片內(nèi)部溫度傳感器值

    (\"\\\\r\\\\n測量RA-Eco-RA6M4開發(fā)板芯片溫度\\\\r\\\\n\"); while(1) { R_ADC_convert(); V1 = ( 3.3
    發(fā)表于 07-27 14:39

    RA-Eco-RA6M4開發(fā)板評測】使用中斷實(shí)現(xiàn)HCSR04測距

    關(guān)于RA-Eco-RA6M4這塊開發(fā)板,論壇內(nèi)已存在多個(gè)帖子進(jìn)行對其詳細(xì)的介紹,這里不再過多贅述。 關(guān)鍵詞:RA6M4、中斷、定時(shí)器、串口 實(shí)現(xiàn)思路:首先在e2studio的可視化配置
    發(fā)表于 09-03 20:55

    RA-Eco-RA6M4部分功能測評

    瑞薩RA-Eco-RA6M4開發(fā)板實(shí)戰(zhàn):UART調(diào)試與GPIO控制避坑指南 作為一名嵌入式開發(fā)愛好者,近期有幸拿到瑞薩RA-Eco-RA6M4
    發(fā)表于 09-04 11:11

    RA-Eco-RA6M4開發(fā)板評測】使用ULINK2開發(fā)瑞薩MCU

    無縫集成 · 寬泛的目標(biāo)電壓范圍:2.7V - 5.5V · 使用標(biāo)準(zhǔn) Windows USB 驅(qū)動程序的即插即用安裝 RA-Eco-RA6M4-100PIN-V1.0 開發(fā)板資料鏈接
    發(fā)表于 09-25 23:08

    【有獎(jiǎng)試用14期】RA-Eco-RA4M2-100PIN開發(fā)板

    為了讓電子發(fā)燒友社區(qū)開發(fā)者們定期體驗(yàn)試用不同的開發(fā)板,現(xiàn)推出每周一期開發(fā)板免費(fèi)試用活動。 第十四期試用的樣品為? RA-Eco-RA4M2-100PIN
    的頭像 發(fā)表于 11-01 08:20 ?1914次閱讀

    有獎(jiǎng)試用?。?b class='flag-5'>RA-Eco-RA4M2-100PIN-V1.0開發(fā)板試用活動報(bào)名

    RA-Eco-RA4M2-100PIN-V1.0開發(fā)板試用活動
    的頭像 發(fā)表于 03-13 12:10 ?697次閱讀
    有獎(jiǎng)試用??!<b class='flag-5'>RA-Eco-RA4M</b>2-100PIN-V1.0<b class='flag-5'>開發(fā)板</b>試用活動報(bào)名

    干貨分享】基于RA-Eco-RA6M4開發(fā)板實(shí)現(xiàn)無線通信

    本文介紹了RA-Eco-RA6M4-100PIN-V1.0開發(fā)板結(jié)合DA16200無線WiFi模塊實(shí)現(xiàn)網(wǎng)絡(luò)通信、數(shù)據(jù)上傳和遠(yuǎn)程控制LED的項(xiàng)目設(shè)計(jì)。包括DA16200模塊介紹、工程創(chuàng)建
    的頭像 發(fā)表于 08-05 08:06 ?528次閱讀
    【<b class='flag-5'>干貨</b>分享】基于<b class='flag-5'>RA-Eco-RA6M4</b><b class='flag-5'>開發(fā)板實(shí)現(xiàn)</b>無線通信