打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
EPWM中断的设置 (转)

大致弄清了EPWM中断的设置。

首先需知道TBCLK的值。此值由EPwmXRegs.TBCTL.bit.HSPCLKDIV EPwmXRegs.TBCTL.bit.CLKDIV这两个值来决定 X代表第XEPWM中断)。这两个值与具体决定TBCLK值的值有个对应表。

HSPCLKDIV实际值

对应A

000H

1

001H

2

010H

4

011H

6

100H

8

101H

10

110H

12

111H

14

      

 

CLKDIV实际值

对应B

000H

1

001H

2(复位时默认值)

010H

4

011H

8

100H

16

101H

32

110H

64

111H

128

 

A = HSPCLKDIV * 2 HSPCLKDIV = 000H时例外,A=1

       B = CLKDIV^2 CLKDIV = 000H时例外,B=1

   TBCLK = SYSCLKOUT / (A*B)

       程序中,

HSPCLKDIV = 1, CLKDIV = 1,

则对应的 A = 2 , B = 2

另,SYSCLKOUT设置为60M

   

所以 TBCLK = 60M / (2*2) = 15M ,

换成时值为 TBCLK = 1 / 15M = 6.6667e-008 s

 

接下来,设置PWM的“控制”(?)模式,共有三种

2模式 UP-DOWN COUNT MODE

1模式 DOWM COUNT MODE

0模式 UP COUNT MODE

2模式下,EPWM中断的周期时间值

Tpwm = 2 * TBPRD * TBCLK

而在01模式下,EPWM中断的周期时间值

Tpwm =TBPRD+1* TBCLK

 

InitAdc()函数中,

EPwm1Regs.TBCTL.bit.CTRMODE = 0;

EPwm1Regs.TBPRD = 0x06FF; //1791

所以 Tpwm =1791+1* TBCLK = 1792 * 6.6667e-008 = 0.00011946667s

 

所以Adc采样率(Adc采样由ePWM中断来驱动)

Fs_adc = Fpwm = 1 / Tpwm = 9370 Hz = 8.3kHz


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【新提醒】【玩转C2000 Launchpad】+EPWM模块实现SPWM波形输出
求探讨:MSP430内部ADC12采样时钟与转换时钟区别? (amoBBS 阿莫电子论坛)
2023届高考语文一轮复习专题讲义(60)
找独胆的方法(天郞adc )
DSPF28335-PWM模块
TMS320F280x ePWM模块的解读
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服