在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

瑞薩RA8D1單片機輸出PWM實現方法

瑞薩MCU小百科 ? 來源:strongerHuang ? 2025-04-11 17:07 ? 次閱讀

PWM:Pulse Width Modulation,脈沖寬度調制。

單片機實現PWM輸出的方式有很多種,有通過IO延時翻轉實現的,比如:

左右滑動查看完整內容

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

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

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

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

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

下面手把手教大家基于e2studio環境下,實現RA8單片機輸出PWM的方法。

準備工作

01下載并安裝e2studio工具

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

e2studio工具

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

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

02準備RA8D1開發板

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

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

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

RA8單片機PWM輸出方法

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

01打開e2studio創建PWM項目

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

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

我們命名項目名稱為:RA8D1_PWM

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

選擇對應芯片型號: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

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

02配置工程

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

這里配置時鐘、添加GPT模塊以相關配置。

配置時鐘:

GPT4使用PCLKD分頻作為時鐘源

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

配置引腳:

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

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

新建定時器模塊:

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

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

03添加源代碼

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

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

bsp_gpt_pwm_output.c源代碼:

左右滑動查看完整內容

#include"bsp_gpt_pwm_output.h"


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


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


/** 設置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);


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


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


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

bsp_gpt_pwm_output.h頭代碼:

左右滑動查看完整內容

#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

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

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

04演示效果

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

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

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

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

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

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

當然,更多參數,我們可以根據自己情況封裝函數接口。

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

    關注

    6055

    文章

    44788

    瀏覽量

    643362
  • PWM
    PWM
    +關注

    關注

    115

    文章

    5277

    瀏覽量

    216872
  • 瑞薩
    +關注

    關注

    36

    文章

    22343

    瀏覽量

    87451
  • 中斷
    +關注

    關注

    5

    文章

    902

    瀏覽量

    42273
  • 定時器
    +關注

    關注

    23

    文章

    3266

    瀏覽量

    116381

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

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

收藏 人收藏

    評論

    相關推薦

    RA8D1 CEU介紹與使用說明

    RA8D1 MCU集成了高性能CM85內核和大內存,以及豐富的外設集,包括帶并行RGB和MIPI-DSI接口的高分辨率TFT-LCD控制器、2D繪圖引擎、16位攝像頭接口和多個外部內存接口,經過優化可滿足各種圖形和視覺AI應用的需求。
    的頭像 發表于 02-20 12:15 ?2773次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA8D1</b> CEU介紹與使用說明

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

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

    RA8D1單片機IO中斷配置實現方法

    本文為結合e2 studio工具,以及CPKCOR_RA8D1B評估板,給大家講述RA8D1
    的頭像 發表于 04-09 15:05 ?461次閱讀
    <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'>實現</b><b class='flag-5'>方法</b>

    RA8D1 CPK開發板試用】開箱與點燈

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

    RA8D1 CPK開發板】RA8D1移植ThreadX操作系統

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

    《電子發燒友電子設計周報》聚焦硬科技領域核心價值 第5期:2025.04.7--2025.04.11

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

    如何使用e2studio對單片機進行PWM輸出

    如何使用e2studio對單片機進行PWM輸出
    發表于 02-16 06:57

    G13單片機PWM輸出例程相關資料下載

    G13單片機PWM輸出例程
    發表于 04-12 10:39 ?18次下載

    單片機】搭建單片機開發壞境

    單片機】搭建單片機開發壞境
    發表于 11-13 12:06 ?48次下載
    【<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><b class='flag-5'>單片機</b>開發壞境

    e2studio(8)----PWM

    本篇文章主要介紹如何使用e2studio對單片機進行PWM輸出
    的頭像 發表于 11-15 10:43 ?1402次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>e2studio(<b class='flag-5'>8</b>)----<b class='flag-5'>PWM</b>

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

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

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

    使用e2 studio FSP基于RA2E1定時器配置PWM輸出
    的頭像 發表于 08-01 00:13 ?1006次閱讀
    使用<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開發板產品簡介

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

    RA8D1試用活動】RA8D1B-CPKCOR開發板移植linux

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

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

    本次實踐完成了RA8D1芯片AES密鑰封裝和芯片上加解密功能驗證
    的頭像 發表于 11-23 01:01 ?636次閱讀
    <b class='flag-5'>RA8D1</b>加密引擎功能體驗和實踐
    主站蜘蛛池模板: 免费一级在线观看 | 久久婷婷国产一区二区三区 | 天堂8在线官网 | 成人欧美一区二区三区视频不卡 | 精品久久久久久久免费加勒比 | 免费色视频 | 91拍拍在线观看 | 一品毛片 | 日日操夜夜操天天操 | ak福利午夜在线观看 | 888午夜不卡理论久久 | 欧美视频亚洲色图 | 色综合久久中文字幕网 | 婷婷在线观看香蕉五月天 | 一本二卡三卡四卡乱码二百 | 69xx女xo69| 美女性视频网站 | 欧美美女被日 | 久热福利| 妖精视频永久在线入口 | 午夜噜噜噜私人影院在线播放 | 日韩黄色网址 | 在线亚洲色图 | 黄 色 录像成 人播放免费99网 | 色网站视频 | 成人影院在线观看视频 | 日韩特级毛片 | 男人的亚洲天堂 | 特级一级毛片视频免费观看 | 五月.com | 六月天婷婷| 干干天天 | 国产性夜夜春夜夜爽 | 国产亚洲精品美女2020久久 | 99视频网站 | 免费边摸边吃奶边叫床视频gif | 亚洲第8页| 亚洲免费小视频 | 性欧美高清 | 欧美一级视频在线观看欧美 | 夜夜五月天|