哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

基于瑞薩RA2L1的波形生成系統(tǒng)設(shè)計(jì)——DTC、AGT與DAC的協(xié)同應(yīng)用

RA生態(tài)工作室 ? 2026-03-27 17:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式系統(tǒng)開發(fā)與測試中,穩(wěn)定、精確的測試信號(hào)生成是一項(xiàng)常見且關(guān)鍵的需求。傳統(tǒng)方法依賴于CPU實(shí)時(shí)計(jì)算并搬運(yùn)數(shù)據(jù),這會(huì)持續(xù)占用處理器資源,增加系統(tǒng)功耗,并可能影響主程序的實(shí)時(shí)性。為解決這一問題,本文介紹一種利用瑞薩RA2L1微控制器MCU)的DAC、DTCAGT三個(gè)外設(shè)模塊協(xié)同工作的解決方案。該方案能夠以極低的CPU參與度,高效生成正弦波、三角波等多種標(biāo)準(zhǔn)波形,為需要模擬信號(hào)輸出的應(yīng)用提供了一種高性能、低功耗的設(shè)計(jì)范例。


核心模塊

DTC(數(shù)據(jù)傳輸控制器)模塊

DTC(Data Transfer Controller)模塊根據(jù)傳輸信息進(jìn)行數(shù)據(jù)傳輸,需要先在SRAM區(qū)域存儲(chǔ)傳輸信息。DTC被激活時(shí),會(huì)讀取與向量號(hào)相關(guān)聯(lián)的DTC向量,從DTC向量中引用的傳輸信息存儲(chǔ)地址讀取傳輸信息并進(jìn)行數(shù)據(jù)傳輸。


傳輸模式包括普通傳輸模式(Normal transfer mode)、重復(fù)傳輸模式(Repeat transfer mode)和塊傳輸模式(Block transfer mode)。DTC在DTC傳送源寄存器(SAR)中指定傳輸源地址,在DTC傳送目標(biāo)寄存器(DAR)中指定傳輸目的地址。在數(shù)據(jù)傳輸后,這些寄存器的值可以獨(dú)立地增減或保持不變。


AGT(低功耗異步通用定時(shí)器)模塊

AGT(Low Power Asynchronous General Purpose Timer)模塊是一個(gè)靈活的16位定時(shí)器,可在低功耗模式下運(yùn)行。在本設(shè)計(jì)中,它被配置為周期定時(shí)模式,用于產(chǎn)生固定時(shí)間間隔的中斷。這些中斷信號(hào)作為“觸發(fā)源”,定期激活DTC,從而精確控制DAC輸出每個(gè)數(shù)據(jù)點(diǎn)的時(shí)間間隔,決定了最終輸出波形的頻率。


DAC(數(shù)模轉(zhuǎn)換器)模塊

RA2L1提供一個(gè)帶輸出放大器的12位數(shù)模轉(zhuǎn)換器(DAC12),由AVCC0和AVSS0提供模擬電源及模擬參考電壓源,輸出引腳為DA0。DAC12的D/A數(shù)據(jù)寄存器0(DADR0)適用于存儲(chǔ)數(shù)模轉(zhuǎn)換數(shù)據(jù)的16位讀/寫寄存器,啟動(dòng)模擬輸出后,DADR0中的數(shù)值會(huì)被轉(zhuǎn)換并輸出到模擬輸出引腳(DA0)中。

系統(tǒng)設(shè)計(jì)方案

系統(tǒng)架構(gòu)

826b30c4-29bf-11f1-96ea-92fbcf53809c.png

圖1.系統(tǒng)架構(gòu)


DAC模塊:負(fù)責(zé)最終的數(shù)模轉(zhuǎn)換與電壓輸出。

AGT模塊:作為系統(tǒng)的“節(jié)拍器”,產(chǎn)生固定周期的中斷來觸發(fā)數(shù)據(jù)傳輸。

DTC模塊:作為“數(shù)據(jù)搬運(yùn)工”,在每次AGT中斷時(shí),自動(dòng)將LUT中的下一個(gè)數(shù)據(jù)點(diǎn)送至DAC。


波形查找表

波形查找表機(jī)制

兩種波形的數(shù)據(jù)都預(yù)先計(jì)算并存儲(chǔ)在查找表(LUT)中。系統(tǒng)運(yùn)行時(shí),DTC模塊按固定時(shí)間間隔依次讀取表中數(shù)據(jù)并傳輸?shù)紻AC寄存器,實(shí)現(xiàn)波形的周期性輸出。這種方式避免了實(shí)時(shí)計(jì)算,大幅降低CPU負(fù)載。


正弦波查找表

使用余弦函數(shù)計(jì)算一個(gè)完整周期(T=input_spp)的采樣點(diǎn)數(shù)據(jù)。通過cos(2πi/input_spp)計(jì)算每個(gè)采樣點(diǎn)的瞬時(shí)值(i=0,1,???,input_spp-1)。由于余弦函數(shù)輸出范圍是[-1,1],需要加1后乘以DAC中間值((DAC_MID_VAL),將其映射到DAC的有效輸出范圍(0~4095)。采樣點(diǎn)數(shù)越多,生成的波形越平滑。


正弦波查找表函數(shù)

左右滑動(dòng)查看完整內(nèi)容

voidgenerate_sin(void){ /* Calculate look up table for sin function */ for(int i=0; i< input_spp; ++i)? ? {? ? ? ? look_up_table[i] = (uint16_t)?

828d1b58-29bf-11f1-96ea-92fbcf53809c.png828d1b58-29bf-11f1-96ea-92fbcf53809c.png

三角波查找表

采用分段線性計(jì)算方式。前半周期線性遞增,從0上升到最大值;后半周期線性遞減,從最大值下降到0,形成對(duì)稱的三角波形。計(jì)算公式基于當(dāng)前采樣點(diǎn)位置與總采樣點(diǎn)數(shù)的比例關(guān)系,通過簡單的線性插值即可得到每個(gè)點(diǎn)的輸出值。


三角波查找表函數(shù)

828d1b58-29bf-11f1-96ea-92fbcf53809c.png82b24ce8-29bf-11f1-96ea-92fbcf53809c.png


軟件流程

828d1b58-29bf-11f1-96ea-92fbcf53809c.png82c881c0-29bf-11f1-96ea-92fbcf53809c.png

圖2. 主流程


系統(tǒng)時(shí)序

82d328e6-29bf-11f1-96ea-92fbcf53809c.png

圖3.系統(tǒng)時(shí)序圖


開發(fā)環(huán)境

表1 開發(fā)環(huán)境

項(xiàng)目

內(nèi)容

所用微控制器

RA2L1(R7FA2L1AB2DFM

工作頻率

HOCO:48MHz,PCLKB:24MHz

工作電壓

3.3V(工作電壓范圍1.6V~5.5V)

開發(fā)板

CPK-RA2L1 MCU評(píng)估板(LQFP64)

集成開發(fā)環(huán)境

e2studio v2025-07(瑞薩電子開發(fā))

FSP v6.0.0

LLVM for ARM v18.1.3

BSP文件

Renesas.RA_board_ra2l1_cpk.3.7.0.pack


硬件配置

83104cee-29bf-11f1-96ea-92fbcf53809c.png

圖4.硬件配置示例


參考例程

為便于讀者快速上手,本文提供了一個(gè)完整的波形生成參考例程。該例程實(shí)現(xiàn)了正弦波和三角波的生成與切換功能,讀者可以在此基礎(chǔ)上進(jìn)行測試、二次開發(fā)和功能擴(kuò)展。

828d1b58-29bf-11f1-96ea-92fbcf53809c.png

例程操作說明

硬件準(zhǔn)備

參考例程使用的是瑞薩中國本地推廣板CPK-RA2L1 MCU評(píng)估板(LQFP64),如圖5所示。開發(fā)板調(diào)試接口為J11,波形輸出端口(P014)從J2連接器Pin 21引出(見圖5中紅框)。

83395ddc-29bf-11f1-96ea-92fbcf53809c.png

圖5.CPK-RA2L1 MCU評(píng)估板(LQFP64)


工程配置

由于例程中使用的開發(fā)板為CPK開發(fā)板,因此在首次使用時(shí)需要導(dǎo)入BSP文件,導(dǎo)入方法見《向FSP中添加CPK評(píng)估板的BSP》。導(dǎo)入BSP文件后可選擇CPK-RA2L1評(píng)估版,請(qǐng)確認(rèn)configuration.xml中的BSP信息與圖6一致。


向FSP中添加CPK評(píng)估板的BSP

https://www.renesas.cn/zh/document/gde/fsp-cpk-bsp?r=1596841


8351f8ba-29bf-11f1-96ea-92fbcf53809c.png

圖6.參考例程中BSP信息


編譯與燒錄:

確認(rèn)BSP信息無誤后即可對(duì)工程進(jìn)行編譯,燒錄到開發(fā)板中并運(yùn)行程序。


交互控制

打開J-Link RTT Viewer,選擇USB連接方式,將“Specify Target Device”設(shè)定為“R7FA2L1AB”,“RTT Control Block”選擇為“Auto Detection”,點(diǎn)擊“OK”后即可連接到開發(fā)板。


83616eee-29bf-11f1-96ea-92fbcf53809c.png

圖7.J-Link RTT Viewer配置信息


成功連接到開發(fā)板后可看到如圖8的工程信息,包括工程版本、FSP版本、例程說明等等。


83735b68-29bf-11f1-96ea-92fbcf53809c.png

圖8.J-Link RTT Viewer工程信息顯示


如圖9所示,用戶需要對(duì)J-Link RTT Viewer中發(fā)送數(shù)據(jù)的方式進(jìn)行以下設(shè)置。


837e5734-29bf-11f1-96ea-92fbcf53809c.png

圖9.J-Link RTT Viewer輸入設(shè)置


參照?qǐng)D8中的提示,用戶輸入“0”可以選擇生成正弦波,輸入“1”可以選擇生成三角波,首先輸入“0”選擇正弦波輸出,如圖10所示。


8389a760-29bf-11f1-96ea-92fbcf53809c.png

圖10.選擇正弦波輸出


根據(jù)圖10中的信息,下一步需要輸入期望采樣點(diǎn)數(shù),注意輸入值需要在2到256之間。

83968b1a-29bf-11f1-96ea-92fbcf53809c.png

圖11.輸入期望采樣點(diǎn)數(shù)


最后需要輸入期望輸出波形頻率,注意波形頻率的最大值已根據(jù)期望采樣點(diǎn)數(shù)計(jì)算得出,因此輸入的期望頻率需要小于最大波形頻率。


83a2c77c-29bf-11f1-96ea-92fbcf53809c.png

圖12.輸入期望頻率


波形觀測

圖13為輸入“0”后生成采樣點(diǎn)為256,頻率為100Hz的正弦波輸出結(jié)果。


83afcd3c-29bf-11f1-96ea-92fbcf53809c.png

圖13.正弦波輸出結(jié)果


圖14為輸入“1”后生成采樣點(diǎn)為256,頻率為100Hz的三角波輸出結(jié)果。


83c3c8e6-29bf-11f1-96ea-92fbcf53809c.png

圖14.三角波輸出結(jié)果


代碼說明

常量一覽

例程中所用常量見表2。


表2 常量說明

常量名稱

數(shù)值

說明

SPP_MIN_VAL

2

最小采樣點(diǎn)數(shù)

SPP_MAX_VAL

256

最大采樣點(diǎn)數(shù)

DAC_MID_VAL

2047.5

波形放縮系數(shù)

DADR0

0x4005E000

DADR0

寄存器地址

DAC_MAX_

CONVERSION_PERIOD

30

DAC最大采樣周期


變量一覽

例程中所用變量見表3。


表3 變量說明

類型

變量名稱

內(nèi)容

uint16_t

look_up_table

[SPP_MAX_VAL]

波形查找表

uint16_t

input_spp

用戶期望采樣點(diǎn)數(shù)

uint32_t

input_freq

用戶期望輸出波形頻率

uint32_t

wave_output

用戶期望輸出波形類型

double

sample_freq

DAC采樣頻率

uint32_t

freq_max_val

最大輸出頻率

double

dac_max_samp_rate

DAC最大采樣率


函數(shù)一覽

例程中所用函數(shù)見表4。


表4 函數(shù)說明

類型

內(nèi)容

R_FSP_VersionGet()

獲取FSP版本

R_IOPORT_PinCfg()

配置引腳設(shè)置

R_DAC_Open()

初始化DAC

R_DAC_Start()

開啟數(shù)模轉(zhuǎn)換輸出

R_DTC_Open()

啟用DTC

R_DTC_Enable()

啟用傳輸

R_AGT_Open()

初始化AGT

R_AGT_Start()

啟動(dòng)定時(shí)器

R_DTC_Reconfigure()

配置DTC

R_FSP_SystemClockHzGet()

獲取系統(tǒng)時(shí)鐘頻率

R_AGT_PeriodSet()

更新AGT周期

generate_sin()

生成正弦波波形查找表

generate_triangle()

成三角波波形查找表


結(jié)語

本文詳細(xì)闡述了基于RA2L1 MCU的硬件協(xié)同波形生成方案。通過巧妙運(yùn)用AGT定時(shí)觸發(fā)、DTC自動(dòng)搬運(yùn)、DAC轉(zhuǎn)換輸出三者形成的“硬件流水線”,成功將CPU從頻繁的數(shù)據(jù)搬運(yùn)任務(wù)中解放出來,實(shí)現(xiàn)了極低的處理器占用與功耗。預(yù)存波形查找表的方法不僅保證了高精度輸出,也預(yù)留了強(qiáng)大的擴(kuò)展能力,可輕松支持方波、鋸齒波或任意自定義波形。


該設(shè)計(jì)理念突出了利用MCU豐富外設(shè)實(shí)現(xiàn)功能卸載、優(yōu)化系統(tǒng)效率的嵌入式設(shè)計(jì)思想。讀者可基于提供的參考例程,快速進(jìn)行原型驗(yàn)證,并靈活調(diào)整采樣率、輸出頻率及波形種類,以滿足各類嵌入式應(yīng)用中對(duì)模擬信號(hào)生成的需求。


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

    關(guān)注

    44

    文章

    2818

    瀏覽量

    197533
  • 瑞薩電子
    +關(guān)注

    關(guān)注

    39

    文章

    2985

    瀏覽量

    74497
  • DTC控制
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    基于RA2L1 MCU的波形生成系統(tǒng)設(shè)計(jì)

    介紹一種利用RA2L1微控制器(MCU)的DAC、DTCAGT三個(gè)外設(shè)模塊
    的頭像 發(fā)表于 01-30 15:09 ?1.4w次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA2L1</b> MCU的<b class='flag-5'>波形</b><b class='flag-5'>生成</b><b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)

    RA2L1入門學(xué)習(xí)】1. 點(diǎn)亮LED

    參考“RA2L1入門教學(xué)實(shí)驗(yàn).pdf”進(jìn)行的,之前使用過STM32CubeIDE和STM32CubeMX軟件,與之相對(duì)應(yīng)的是e2studio和RASC軟件,整體用起來還是挺方便的。
    發(fā)表于 01-29 22:17

    RA2L1入門學(xué)習(xí)】2. PWM呼吸燈

    開發(fā)板:RA-Eco-RA2L1-48PIN-V1.0 IDE:e2studio 程序燒錄工具:RAFP 參考資料:“RA2L1入門教學(xué)實(shí)驗(yàn).pdf” 本次使用的是32位GPT 1.編
    發(fā)表于 01-30 21:55

    RA2L1入門學(xué)習(xí)】新建工程和串口燒寫程序

    RA2L1板卡的原理圖了,RA2L1的資料鏈接為:RA板卡資料。不過需要登錄點(diǎn)擊下載才可以,否則是沒有反應(yīng)的。下載后的原理圖在壓縮包目錄下,名稱為RA2L1_E1_LQFP48 TOU
    發(fā)表于 03-02 22:47

    RA2L1入門學(xué)習(xí)】+Key控制LED實(shí)驗(yàn)

    基于 Arm? Cortex?-M23 核心(現(xiàn)今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產(chǎn)品采用優(yōu)化的制程和電子的低功耗工藝技術(shù),是業(yè)界一流水平的超低功耗微控制器。 RA2L1
    發(fā)表于 03-07 15:16

    RA2L1入門學(xué)習(xí)】+開箱評(píng)測

    R7FA2L1AB2DFL。RA2L1 產(chǎn)品組采用優(yōu)化的制程和電子的低功耗工藝技術(shù),是業(yè)界一流水平的超低功耗微控制器。 本次收到的開發(fā)板印刷RA
    發(fā)表于 03-09 07:40

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

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

    RA2L1入門學(xué)習(xí)】+Led flash

    ? Cortex?-M23 核心(現(xiàn)今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產(chǎn)品采用優(yōu)化的制程和電子的低功耗工藝技術(shù),是業(yè)界一流水平的超低功耗微控制器。 RA2L1 產(chǎn)品
    發(fā)表于 03-09 17:12

    RA2L1入門學(xué)習(xí)】+Key control LED

    ? Cortex?-M23 核心(現(xiàn)今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產(chǎn)品采用優(yōu)化的制程和電子的低功耗工藝技術(shù),是業(yè)界一流水平的超低功耗微控制器。 RA2L1 產(chǎn)品
    發(fā)表于 03-09 17:21

    RA2L1入門學(xué)習(xí)】+Uart printf

    ? Cortex?-M23 核心(現(xiàn)今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產(chǎn)品采用優(yōu)化的制程和電子的低功耗工藝技術(shù),是業(yè)界一流水平的超低功耗微控制器。 RA2L1 產(chǎn)品
    發(fā)表于 03-09 17:33

    電子RA2L1英文數(shù)據(jù)手冊(cè)

    本資料包含電子RA2L1英文數(shù)據(jù)手冊(cè)
    發(fā)表于 10-21 16:21 ?1次下載

    基于RA2L1實(shí)現(xiàn)串口DTC數(shù)據(jù)接收

    基于RA2L1實(shí)現(xiàn)串口DTC數(shù)據(jù)接收
    的頭像 發(fā)表于 10-10 09:34 ?2089次閱讀
    基于<b class='flag-5'>RA2L1</b>實(shí)現(xiàn)串口<b class='flag-5'>DTC</b>數(shù)據(jù)接收

    RA2L1系列CAN通信應(yīng)用

    RA2L1系列CAN通信應(yīng)用
    的頭像 發(fā)表于 06-26 08:06 ?2065次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA2L1</b>系列CAN通信應(yīng)用

    電子RA2L1 MCU產(chǎn)品介紹

    RA2L1 MCU是RA家族RA2系列廣受歡迎的一款產(chǎn)品。RA2L1 MCU專為超低功耗應(yīng)用
    的頭像 發(fā)表于 12-10 10:51 ?1949次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子<b class='flag-5'>RA2L1</b> MCU產(chǎn)品介紹

    RA2L1微控制器:架構(gòu)特點(diǎn)及應(yīng)用分析

    RA2L1微控制器:架構(gòu)特點(diǎn)及應(yīng)用分析 在當(dāng)前電子設(shè)備不斷追求低功耗與高性能的大趨勢(shì)下,電子推出的
    的頭像 發(fā)表于 04-01 11:20 ?142次閱讀
    蒲城县| 静安区| 子洲县| 白玉县| 北碚区| 建湖县| 天镇县| 罗江县| 同江市| 桂平市| 安国市| 东明县| 台中市| 开化县| 遵义县| 澎湖县| 蓬莱市| 瓮安县| 兰州市| 盈江县| 河东区| 惠安县| 柞水县| 长子县| 定远县| 平顶山市| 诸暨市| 邵阳市| 德江县| 庆阳市| 彩票| 浦江县| 成武县| 平果县| 广南县| 陵川县| 逊克县| 莱州市| 平原县| 保康县| 信阳市|