99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

瑞薩RA8D1單片機輸出PWM實現(xiàn)方法

瑞薩MCU小百科 ? 來源:strongerHuang ? 2025-04-11 17:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

PWM:Pulse Width Modulation,脈沖寬度調(diào)制。

單片機實現(xiàn)PWM輸出的方式有很多種,有通過IO延時翻轉(zhuǎn)實現(xiàn)的,比如:

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

while(1)
{
IO口高電平
Delay延時
IO口低電平
Delay延時
}

2568822e-169b-11f0-9310-92fbcf53809c.png

也有通過定時器中斷控制IO高低電平輸出實現(xiàn)的。

定時器中斷配置——>啟動定時器——>響應(yīng)中斷,控制IO高低電平

當(dāng)然,本文通過,瑞薩RA8D1單片機通用PWM定時器(GPT,General PWM Timer)輸出PWM波形,這樣既避免了占用CPU資源,又避免了誤差(精度相對很高)。

下面手把手教大家基于e2studio環(huán)境下,實現(xiàn)RA8單片機輸出PWM的方法。

準備工作

01下載并安裝e2studio工具

下載地址,推薦瑞薩官方的GitHub:

e2studio工具

https://github.com/renesas/fsp/releases

我們這里基于Windows環(huán)境,安裝exe文件,基本根據(jù)提示信息一路next即可。這里不再詳述。

02準備RA8D1開發(fā)板

我們這里以瑞薩RA8D1單片機為例:

(當(dāng)然,其實RA系列單片機也類似)

257efd38-169b-11f0-9310-92fbcf53809c.png

RA8單片機PWM輸出方法

本文就瑞薩官方集成開發(fā)工具e2studio,它是瑞薩單片機一站式編程工具,只需要動動鼠標點一點就能創(chuàng)建一個單片機工程。

01打開e2studio創(chuàng)建PWM項目

259de428-169b-11f0-9310-92fbcf53809c.jpg

25a8b3e4-169b-11f0-9310-92fbcf53809c.png

我們命名項目名稱為:RA8D1_PWM

25b59b18-169b-11f0-9310-92fbcf53809c.png

選擇對應(yīng)芯片型號:R7FA8D1BEC

25c551e8-169b-11f0-9310-92fbcf53809c.png

25d9b502-169b-11f0-9310-92fbcf53809c.png

25e84018-169b-11f0-9310-92fbcf53809c.png

25f4f772-169b-11f0-9310-92fbcf53809c.png

26028996-169b-11f0-9310-92fbcf53809c.png

只需要動動鼠標“點一點”,一個完整的工程就創(chuàng)建好了。

02配置工程

我們使用RA8D1單片機通用PWM定時器(General PWM Timer)GPT4,引腳P301輸出PWM。

這里配置時鐘、添加GPT模塊以相關(guān)配置。

配置時鐘:

GPT4使用PCLKD分頻作為時鐘源

26142e80-169b-11f0-9310-92fbcf53809c.png

配置引腳:

我們使用GPT4的P301作為PWM輸出引腳。

262334d4-169b-11f0-9310-92fbcf53809c.png

新建定時器模塊:

我們添加定時器模塊并配置相關(guān)屬性(配置常用參數(shù),其實默認即可)。

26349666-169b-11f0-9310-92fbcf53809c.png

03添加源代碼

我們這里簡單添加一個gpt4模塊(源代碼文件),如圖:

26425792-169b-11f0-9310-92fbcf53809c.png

bsp_gpt_pwm_output.c源代碼:

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

#include"bsp_gpt_pwm_output.h"


/* GPT初始化函數(shù) */
voidGPT_PWM_Init(void)
{
 /* 初始化 GPT 模塊 */
 R_GPT_Open(&g_timer_gpt4_ctrl, &g_timer_gpt4_cfg);


   /* 啟動 GPT 定時器 */
 R_GPT_Start(&g_timer_gpt4_ctrl);
}


/** 設(shè)置PWM占空比
  @param duty 占空比范圍:0~100 %
*/
voidGPT_PWM_SetDuty(uint8_tduty)
{
 timer_info_tinfo;
 uint32_tcurrent_period_counts;
 uint32_tduty_cycle_counts;


 if(duty >100)
    duty =100;//限制占空比范圍:0~100


 /* 獲得GPT的信息 */
 R_GPT_InfoGet(&g_timer_gpt4_ctrl, &info);


   /* 獲得計時器一個周期需要的計數(shù)次數(shù) */
  current_period_counts = info.period_counts;


   /* 根據(jù)占空比和一個周期的計數(shù)次數(shù)計算GTCCR寄存器的值 */
  duty_cycle_counts = (uint32_t)(((uint64_t) current_period_counts * duty) /100);


 /* 最后調(diào)用FSP庫函數(shù)設(shè)置占空比 */
 R_GPT_DutyCycleSet(&g_timer_gpt4_ctrl, duty_cycle_counts, GPT_IO_PIN_GTIOCB);
}

bsp_gpt_pwm_output.h頭代碼:

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

#ifndef__BSP_GPT_PWM_OUTPUT_H
#define__BSP_GPT_PWM_OUTPUT_H
#include"hal_data.h"


voidGPT_PWM_Init(void);


voidGPT_PWM_SetDuty(uint8_tduty);


#endif

我們這里只有兩個簡單函數(shù),在我們代碼中添加GPT_PWM_Init即可實現(xiàn)(配置中的)200KHz,占空比80%的PWM波形輸出。

265469e6-169b-11f0-9310-92fbcf53809c.png

04演示效果

下圖是我們配置200KHz,占空比80%的PWM波形:

2662791e-169b-11f0-9310-92fbcf53809c.png

根據(jù)源碼,你能發(fā)現(xiàn),我們只需要初始化(配置好)PWM輸出,后面就不會占用CPU資源。

我們提供了一個簡單的接口,修改占空比,如果需要根據(jù)需求修改占空比,我們調(diào)用一下接口即可。比如我們修改占空比為60%:

266fc9a2-169b-11f0-9310-92fbcf53809c.png

26808d14-169b-11f0-9310-92fbcf53809c.png

當(dāng)然,更多參數(shù),我們可以根據(jù)自己情況封裝函數(shù)接口。

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

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650535
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    116

    文章

    5521

    瀏覽量

    219421
  • 瑞薩
    +關(guān)注

    關(guān)注

    36

    文章

    22386

    瀏覽量

    88051
  • 中斷
    +關(guān)注

    關(guān)注

    5

    文章

    905

    瀏覽量

    42807
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3298

    瀏覽量

    118959

原文標題:瑞薩RA8系列教程 | RA8輸出PWM實現(xiàn)方法

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    基于RA8單片機的智能小車項目方案 附源代碼

    基于RA8單片機,e2studio開發(fā)環(huán)境,給大家講述一下智能小車項目的方案,并附上主要的源代碼。
    的頭像 發(fā)表于 03-07 14:36 ?1522次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8</b><b class='flag-5'>單片機</b>的智能小車項目方案 附源代碼

    基于電子RA8D1 MCU的USB和I2S數(shù)字音頻應(yīng)用解決方案

    今天給大家介紹一下上海覺鑫智能科技有限公司基于電子RA8D1 MCU的USB&I2S數(shù)字音頻應(yīng)用解決方案。
    的頭像 發(fā)表于 04-30 14:47 ?1880次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子<b class='flag-5'>RA8D1</b> MCU的USB和I2S數(shù)字音頻應(yīng)用解決方案

    RA8D1單片機IO中斷配置實現(xiàn)方法

    本文為結(jié)合e2 studio工具,以及CPKCOR_RA8D1B評估板,給大家講述RA8D1
    的頭像 發(fā)表于 04-09 15:05 ?998次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8D1</b><b class='flag-5'>單片機</b>IO中斷配置<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>方法</b>

    RA8D1 CPK開發(fā)板試用】開箱與點燈

    一、前言 RA8D1 CPK開發(fā)板是業(yè)界首款基于Arm Cortex-M85內(nèi)核的32位圖形微控制器,板載資源豐富,性能優(yōu)越。運行在480MHz的主頻下可實現(xiàn)超過3000 Core
    發(fā)表于 10-08 01:04

    RA8D1 CPK開發(fā)板】RA8D1移植ThreadX操作系統(tǒng)

    首先感謝[RA生態(tài)工作室]( RA MCU 生態(tài)社區(qū))提供的
    發(fā)表于 10-20 20:22

    《電子發(fā)燒友電子設(shè)計周報》聚焦硬科技領(lǐng)域核心價值 第7期:2025.04.7--2025.04.11

    、TPS1685--德州儀器推出新款電源管理芯片 技術(shù)看點: 1、CAN XL車載網(wǎng)絡(luò)驗證仿真 2、RA8D1單片機
    發(fā)表于 04-11 19:51

    G13單片機PWM輸出例程相關(guān)資料下載

    G13單片機PWM輸出例程
    發(fā)表于 04-12 10:39 ?19次下載

    電子宣布推出RA8D1微控制器(MCU)產(chǎn)品群

    2023年12月12日,電子宣布推出RA8D1微控制器(MCU)產(chǎn)品群。RA8D1產(chǎn)品群作為
    的頭像 發(fā)表于 12-15 15:58 ?1432次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子宣布推出<b class='flag-5'>RA8D1</b>微控制器(MCU)產(chǎn)品群

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

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

    基于電子RA系列的野火耀陽RA8D1開發(fā)板產(chǎn)品簡介

    野火耀陽RA8D1開發(fā)板是一款功能強大的開發(fā)板,適用于各種嵌入式應(yīng)用開發(fā)。它采用電子的RA系列R7FA8D1BHECBD微控制器作為主控
    的頭像 發(fā)表于 05-29 14:19 ?1466次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子<b class='flag-5'>RA</b>系列的野火耀陽<b class='flag-5'>RA8D1</b>開發(fā)板產(chǎn)品簡介

    RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux

    RA8D1試用活動】RA8D1B-CPKCOR開發(fā)板移植linux
    的頭像 發(fā)表于 11-16 01:02 ?935次閱讀
    【<b class='flag-5'>RA8D1</b>試用活動】<b class='flag-5'>RA8D1</b>B-CPKCOR開發(fā)板移植linux

    RA8D1加密引擎功能體驗和實踐

    本次實踐完成了RA8D1芯片AES密鑰封裝和芯片上加解密功能驗證
    的頭像 發(fā)表于 11-23 01:01 ?905次閱讀
    <b class='flag-5'>RA8D1</b>加密引擎功能體驗和實踐

    RA8系列教程 | 基于 Keil 開發(fā) RA8單片機

    本文結(jié)合Cortext-M85單片機RA8D1、Keil MDK,以及自家的代碼初始化工
    的頭像 發(fā)表于 04-22 17:41 ?512次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8</b>系列教程 | 基于 Keil 開發(fā) <b class='flag-5'>RA8</b><b class='flag-5'>單片機</b>

    RA8系列教程 | RA8 開發(fā)環(huán)境搭建,并點亮一個LED

    今天就給大家講講基于Cortex-M85內(nèi)核RA8單片機快速上手指南。
    的頭像 發(fā)表于 06-04 17:32 ?680次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8</b>系列教程 | <b class='flag-5'>瑞</b><b class='flag-5'>薩</b> <b class='flag-5'>RA8</b> 開發(fā)環(huán)境搭建,并點亮一個LED

    RA8系列教程 | RA8基于e2s實現(xiàn)RTC實時時鐘功能

    本文結(jié)合e2 studio開發(fā)環(huán)境、RA8D1單片機給大家描述RTC這個模塊的使用方法。
    的頭像 發(fā)表于 05-13 17:07 ?525次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8</b>系列教程 | <b class='flag-5'>RA8</b>基于e2s<b class='flag-5'>實現(xiàn)</b>RTC實時時鐘功能