瑞薩e2studio(8)----PWM
@TOC
概述
本篇文章主要介紹如何使用e2studio對(duì)瑞薩單片機(jī)進(jìn)行PWM輸出。
需要樣片的可以加qun申請:6_15061293 。
視頻教學(xué)
聽不到聲音的請點(diǎn)擊跳轉(zhuǎn)進(jìn)行觀看。

csdn課程
課程更加詳細(xì)。
https://edu.csdn.net/course/detail/36131
硬件準(zhǔn)備
首先需要準(zhǔn)備一個(gè)開發(fā)板,這里我準(zhǔn)備的是芯片型號(hào)R7FA4M2AD3CFP的開發(fā)板:

開發(fā)板鏈接

新建工程

工程模板

保存工程路徑

芯片配置
本文中使用R7FA4M2AD3CFP來進(jìn)行演示。

工程模板選擇

時(shí)鐘設(shè)置
開發(fā)板上的外部高速晶振為12M,需要修改XTAL為12M.

選擇定時(shí)器

時(shí)鐘源在這設(shè)置的是PCKLD 50M 。

可以通過修改該頻率來修改占空比頻率。
PWM(脈沖寬度調(diào)制)
在瑞薩RA系列MCU中有兩種定時(shí)器,一種是通用PWM定時(shí)器GPT,另外一種是異步通用定時(shí)器AGT。
頻率=主頻/period
+占空比=cycle/period

定時(shí)器管腳配置
通過點(diǎn)擊需要配置的管腳,選擇GTIOC2B即可配置。

管腳定義
開發(fā)板上有Arduino的接口,選取(P103)GTIOC2A和(P114)GTIOC2B進(jìn)行配置。

定時(shí)器配置
點(diǎn)擊Stacks->New Stack->Timers->Timer, General PWM(r_gpt)。


工程文件
查看pin_data.c,可以看到定時(shí)器2的定義已經(jīng)寫入,說明配置成功。

查看hal_data.c,可以看到定時(shí)器2的初始化已經(jīng)配置成功。

打開main.c函數(shù),發(fā)現(xiàn)寫了一個(gè)hal_entry ()函數(shù)。

R_GPT_Open()函數(shù)原型

故可以用 R_GPT_Open()函數(shù)進(jìn)行初始化時(shí)器模塊并應(yīng)用配置。
R_GPT_Start()函數(shù)原型

故可以用R_GPT_Start()函數(shù)進(jìn)行開啟定時(shí)器。
R_GPT_PeriodSet()函數(shù)原型

頻率=時(shí)鐘源/period,若設(shè)置頻率為10K,則period=50M/10K=5000
R_GPT_DutyCycleSet()函數(shù)原型

+占空比=cycle/period,若設(shè)置通道A的+占空比為25%,則cycle= +占空比* period=25%5000=1250
若設(shè)置通道B的+占空比為45%,則cycle= +占空比 period=45%*5000=2250
R_GPT_Reset()函數(shù)原型

將計(jì)數(shù)器值重置為 0。
代碼
在hal_entry()中添加如下。
結(jié)果演示
通道A和B都是輸出1K的60%正占空比方波。

通道A和B都是分別輸出10K的25%正占空比方波和10K的45%正占空比方波。

以上的代碼會(huì)在Q_QUN里分享。Q_QUN:615061293。
或者關(guān)注『記帖』,持續(xù)更新文章和學(xué)習(xí)資料!
