本文來(lái)源電子發(fā)燒友社區(qū),作者:jf_53933321, 帖子地址:https://bbs.elecfans.com/jishu_2286741_1_1.html
這塊板子最大的特點(diǎn)是mcu帶dsp。dsp最大的特點(diǎn)是有非常豐富的計(jì)算指令,而且計(jì)算指令占用系統(tǒng)時(shí)鐘周期特別短。今天來(lái)玩pwm。
這塊板子最大的特點(diǎn)是mcu帶dsp。dsp最大的特點(diǎn)是有非常豐富的計(jì)算指令,而且計(jì)算指令占用系統(tǒng)時(shí)鐘周期特別短。今天來(lái)玩pwm。
1.pwm是啥
PWM是一種對(duì)模擬信號(hào)電平進(jìn)行數(shù)字編碼的方法。通過(guò)高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來(lái)對(duì)一個(gè)具體模擬信號(hào)的電平進(jìn)行編碼。PWM信號(hào)仍然是數(shù)字的,因?yàn)樵诮o定的任何時(shí)刻,滿幅值的直流供電要么完全有(ON),要么完全無(wú)(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的。通的時(shí)候即是直流供電被加到負(fù)載上的時(shí)候,斷的時(shí)候即是供電被斷開(kāi)的時(shí)候。只要帶寬足夠,任何模擬值都可以使用PWM進(jìn)行編碼。
2.pwm可以用來(lái)干啥
pwm輸出可以接到led燈上,通過(guò)調(diào)節(jié)占空比可以達(dá)到調(diào)整led的亮度。pwm輸出還可以接到蜂鳴器上,通過(guò)占空比調(diào)節(jié)聲音頻率,可以讓蜂鳴器唱歌。這些都是大材小用。其實(shí)pwm最大的作用是做精密電源,或者做電機(jī)驅(qū)動(dòng)。
3.上代碼
我看了下板子上有的LED資源是接了OPWM4B和OPWM4A,正好可以用來(lái)驗(yàn)證。
復(fù)制代碼
復(fù)制代碼
4.效果圖
2.pwm可以用來(lái)干啥
pwm輸出可以接到led燈上,通過(guò)調(diào)節(jié)占空比可以達(dá)到調(diào)整led的亮度。pwm輸出還可以接到蜂鳴器上,通過(guò)占空比調(diào)節(jié)聲音頻率,可以讓蜂鳴器唱歌。這些都是大材小用。其實(shí)pwm最大的作用是做精密電源,或者做電機(jī)驅(qū)動(dòng)。
3.上代碼
我看了下板子上有的LED資源是接了OPWM4B和OPWM4A,正好可以用來(lái)驗(yàn)證。
- void InitEPwm4Example()
- {
- /*時(shí)鐘分頻標(biāo)志位。 0: 不分頻 1: 2分頻*/
- EPwm4Regs.CLKDIV.bit.CLKDIV = 1;
- /*配置EPWM輸出頻率為TBCLK/3000/2=10kHz*/
- EPwm4Regs.TBPRD = 3000000;
- /*配置EPWM輸出相位不偏移*/
- EPwm4Regs.TBPHS.half.TBPHS = 0;
- /*配置EPWM的TBCTR計(jì)數(shù)初值為0*/
- EPwm4Regs.TBCTR = 0x0000;
- /*配置EPWM的占空比輸出為50%*/
- EPwm4Regs.CMPA.half.CMPA = 1500;
- EPwm4Regs.CMPB = 0;
- /*配置EPWM的TBCTR采用向上向下計(jì)數(shù)*/
- EPwm4Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN;
- /*配置EPWM輸出不裝載相位偏移*/
- EPwm4Regs.TBCTL.bit.PHSEN = TB_DISABLE;
- /*配置EPWM時(shí)基頻率TBCLK為系統(tǒng)時(shí)鐘,不進(jìn)行分頻*/
- EPwm4Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1;
- EPwm4Regs.TBCTL.bit.CLKDIV = TB_DIV1;
- /*比較模塊CMPA采用影子寄存器裝載模式*/
- EPwm4Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
- EPwm4Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
- /*比較模塊CMPA從CTR=0時(shí)開(kāi)始裝載*/
- EPwm4Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO;
- EPwm4Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO;
- /*TBCTR向上計(jì)數(shù)時(shí),達(dá)到CMPA事件,EPWM1A產(chǎn)生置高動(dòng)作*/
- EPwm4Regs.AQCTLA.bit.CAU = AQ_SET;
- /*TBCTR向下計(jì)數(shù)時(shí),達(dá)到CMPA事件,EPWM1A產(chǎn)生置低動(dòng)作*/
- EPwm4Regs.AQCTLA.bit.CAD = AQ_CLEAR;
- /*TBCTR向下計(jì)數(shù)時(shí),達(dá)到CMPB事件,EPWM1B產(chǎn)生置低動(dòng)作*/
- EPwm4Regs.AQCTLB.bit.CBD = AQ_CLEAR;
- /*TBCTR向上計(jì)數(shù)時(shí),達(dá)到CMPB事件,EPWM1B產(chǎn)生置高動(dòng)作*/
- EPwm4Regs.AQCTLB.bit.CBU = AQ_SET;
- /*中斷事件選擇,當(dāng)CTR=0時(shí)開(kāi)始產(chǎn)生事件中斷*/
- EPwm4Regs.ETSEL.bit.INTSEL = ET_CTR_ZERO;
- /*中斷事件選擇,事件中斷的使能信號(hào)*/
- EPwm4Regs.ETSEL.bit.INTEN = 1;
- /*中斷事件分頻配置,一周期產(chǎn)生1次中斷*/
- EPwm4Regs.ETPS.bit.INTPRD = ET_1ST;
- /*
- HALFCYCLE 位無(wú)用, 配置無(wú)效;
- HALFEN 位=0: 死區(qū)采用 2 倍 TBCLK 時(shí)鐘;
- HALFEN 位=1: 死區(qū)采用 TBCLK 時(shí)鐘;
- */
- EPwm4Regs.DBCTL.bit.HALFEN = 1;
- // EPwm4Regs.DBCTL.bit.HALFCYCLE = 1;
- /*死區(qū)輸出模式配置,配置輸出雙邊沿延時(shí)*/
- EPwm4Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE;
- /*死區(qū)極性配置,配置EPWMxA輸出置高,EPWMxB輸出置低*/
- EPwm4Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC;
- /*死區(qū)輸入模式配置,配置輸入的上升沿與下降沿延時(shí)來(lái)源為EPWMxA*/
- EPwm4Regs.DBCTL.bit.IN_MODE = DBA_ALL;
- /*死區(qū)時(shí)間配置,配置輸出上升沿延時(shí)5us*/
- EPwm4Regs.DBRED = 600;
- /*死區(qū)時(shí)間配置,配置輸出下降沿延時(shí)5us*/
- EPwm4Regs.DBFED = 600;
- }
- int main(void)
- {
- /*系統(tǒng)時(shí)鐘初始化*/
- InitSysCtrl();
- /*EPWM外設(shè)引腳初始化配置*/
- InitEPwm4Gpio();
- InitPieCtrl();
- /*清中斷,關(guān)中斷*/
- IER = 0x0000;
- IFR = 0x0000;
- /*中斷向量表初始化配置*/
- InitPieVectTable();
- EALLOW;
- /*配置EPWM1_INT中斷向量表指向執(zhí)行相應(yīng)的中斷服務(wù)程序*/
- PieVectTable.EPWM1_INT = &epmw1_isr;
- EDIS;
- EALLOW;
- /*禁止EPWM的時(shí)基使能,允許EPWM初始化配置寫入*/
- SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;
- EDIS;
- /*EPWM的初始化配置*/
- InitEPwm4Example();
- EALLOW;
- /*打開(kāi)EPWM的時(shí)基使能,使EPWM的初始化配置起作用*/
- SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;
- EDIS;
- /*使能打開(kāi)IER的第3組中斷向量*/
- IER = M_INT3;
- /*使能打開(kāi)IER的第3組中斷向量的第一個(gè)向量*/
- PieCtrlRegs.PIEIER3.bit.INTx1 = 1;
- /*使能打開(kāi)全局中斷*/
- EINT;
- while(1)
- {
- }
- return 0;
- }
4.效果圖
5.IDE的神奇功效
IDE里有一個(gè)live view面板,我覺(jué)得live View可以代替示波器,在live View里設(shè)置刷新時(shí)間和觀察的變量后,非常方便調(diào)試。再加上對(duì)變量值的以采樣時(shí)間為橫軸畫圖,真的就能達(dá)到示波器的效果,思路非常不錯(cuò)。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
中科昊芯
+關(guān)注
關(guān)注
5文章
80瀏覽量
5154 -
開(kāi)發(fā)板試用
+關(guān)注
關(guān)注
3文章
301瀏覽量
2092
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
瑞芯微主板/開(kāi)發(fā)板Linux系統(tǒng)播放音頻方法,觸覺(jué)智能RK3562開(kāi)發(fā)板演示
本文介紹瑞芯微方案主板/開(kāi)發(fā)板Linux系統(tǒng)播放音頻的方法,觸覺(jué)智能RK3562開(kāi)發(fā)板演示,通用RK3566、RK3568、RK3588等
PWM在LED調(diào)光中的應(yīng)用
模擬信號(hào)的數(shù)字表示方法,它通過(guò)周期性地打開(kāi)和關(guān)閉信號(hào)來(lái)模擬一個(gè)連續(xù)的信號(hào)。在LED調(diào)光中,PWM通過(guò)控制
追加名額丨米爾瑞芯微RK3576開(kāi)發(fā)板有獎(jiǎng)試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開(kāi)發(fā)板免費(fèi)試用活動(dòng)加碼啦~~米爾追加了2塊價(jià)值849元的MYD-LR3576
PWM調(diào)制技術(shù)在LED亮度調(diào)節(jié)中的使用
調(diào)制技術(shù)因其在調(diào)節(jié)精度、響應(yīng)速度和能耗方面的優(yōu)勢(shì),成為了LED亮度調(diào)節(jié)的首選技術(shù)之一。 PWM調(diào)制技術(shù)原理 PWM調(diào)制技術(shù)是一種通過(guò)改變脈沖
有獎(jiǎng)丨米爾 瑞芯微RK3576開(kāi)發(fā)板免費(fèi)試用
米爾與瑞芯微合作發(fā)布的新品基于瑞芯微RK3576應(yīng)用處理器的MYD-LR3576開(kāi)發(fā)板免費(fèi)試用活動(dòng)來(lái)啦~~米爾提供了7塊價(jià)值849元的MYD-LR3576
有獎(jiǎng)試用?。A-Eco-RA4E2-64PIN-V1.0開(kāi)發(fā)板試用活動(dòng)開(kāi)始報(bào)名
有獎(jiǎng)試用??!RA-Eco-RA4E2-64PIN-V1.0開(kāi)發(fā)板試用活動(dòng)開(kāi)始報(bào)名
喜報(bào)!中科昊芯榮獲國(guó)家級(jí)專精特新“小巨人”企業(yè)稱號(hào)
喜訊!近日,國(guó)家工業(yè)和信息化部門正式揭曉了第六批國(guó)家專精特新“小巨人”企業(yè)名單,中科昊芯憑借卓越的技術(shù)實(shí)力和創(chuàng)新能力,榮獲了專精特新“小巨人”企業(yè)殊榮。這一榮譽(yù)不僅是對(duì)中科
如何在NXP源碼基礎(chǔ)上適配ELF 1開(kāi)發(fā)板的PWM功能
本次源碼適配項(xiàng)目是在NXP i.MX6ULL EVK評(píng)估板所搭載的Linux內(nèi)核源碼(版本為L(zhǎng)inux-imx_4.1.15)基礎(chǔ)上進(jìn)行的,主要目標(biāo)是通過(guò)調(diào)整功能接口引腳配置,使其適應(yīng)ELF 1
【龍芯2K0300蜂鳥(niǎo)板試用】開(kāi)箱體驗(yàn)
本帖最后由 ele2022 于 2024-8-13 19:54 編輯
首先感謝電子發(fā)燒友和龍芯中科提供的試用機(jī)會(huì)。
今天開(kāi)箱體驗(yàn)龍芯中科的一款2K0300蜂鳥(niǎo)開(kāi)發(fā)板。龍芯2K03
發(fā)表于 08-12 19:59
點(diǎn)擊參與米爾NXP i.MX 93開(kāi)發(fā)板有獎(jiǎng)試用
米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開(kāi)發(fā)板免費(fèi)試用活動(dòng)來(lái)啦~~米爾提供了3塊價(jià)值678元的MYD-LMX9X開(kāi)發(fā)板發(fā)起試用活動(dòng)您不僅可以免費(fèi)體
免費(fèi)!NXP i.MX 93開(kāi)發(fā)板有獎(jiǎng)試用
米爾與NXP合作發(fā)布的新品基于NXPi.MX93應(yīng)用處理器的MYD-LMX9X開(kāi)發(fā)板免費(fèi)試用活動(dòng)來(lái)啦~~米爾提供了2塊價(jià)值678
fpga開(kāi)發(fā)板是什么?fpga開(kāi)發(fā)板有哪些?
FPGA開(kāi)發(fā)板是一種基于FPGA(現(xiàn)場(chǎng)可編程門陣列)技術(shù)的開(kāi)發(fā)平臺(tái),它允許工程師通過(guò)編程來(lái)定義和配置FPGA芯片上的邏輯電路,以實(shí)現(xiàn)各種數(shù)字電路和邏輯功能。FPGA
pwm調(diào)光是什么意思
PWM調(diào)光(Pulse Width Modulation Dimming)是一種利用脈沖寬度調(diào)制(PWM)技術(shù)來(lái)控制發(fā)光二極管(LED)亮度
使用愛(ài)芯派Pro開(kāi)發(fā)板部署人體姿態(tài)估計(jì)模型
在經(jīng)過(guò)之前對(duì)于開(kāi)發(fā)板的使用,以及通過(guò)幾個(gè)愛(ài)芯派官方給出的示例demo(mobilenet/yolov5)在開(kāi)發(fā)板上的部署之后,筆者也逐漸了解了愛(ài)芯
評(píng)論