011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx

上传人:b****4 文档编号:15873884 上传时间:2022-11-16 格式:DOCX 页数:21 大小:134.68KB
下载 相关 举报
011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx_第1页
第1页 / 共21页
011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx_第2页
第2页 / 共21页
011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx_第3页
第3页 / 共21页
011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx_第4页
第4页 / 共21页
011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx

《011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx》由会员分享,可在线阅读,更多相关《011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx(21页珍藏版)》请在冰豆网上搜索。

011第十一章脉波宽度调变Pulse Width Modulation文档格式.docx

DutyCycleLatchHighByte(DL0H;

DL1H)和DutyCycleLatchLowByte(DL0L;

DL1L)。

DL0H:

DL0L是針對PWM0所設定的暫存器;

DL1H:

DL1L是針對PWM1所設定的暫存器,統稱為DLX。

DutyCycleLatch暫存器是唯讀的暫存器。

PWM的Period也是由2個暫存器所決定:

PeriodHighByte(PRD0H;

PRD1H)和PeriodLowByte(PRD0L;

PRD1L)。

PRD0H:

PRD0L是針對PWM0所設定的暫存器;

PRD1H:

PRD1L是針對PWM1所設定的暫存器,統稱為PRDX。

在ET44M210內部有2個與PWM有關的16位元計數器:

TMR0和TMR1。

TMR0是針對PWM0所設定的計數器;

TMR1是針對PWM1所設定的計數器,統稱為TMRX。

當PWM啟動之後,SystemClock就會送到TMRX開始上數,此時會將PWM輸出接腳設為1,在此同時會分別與DLX與PRDX做比較;

當TMRX的值等於DLX的值時,PWM輸出接腳會設為0。

當TMRX的值等於PRDX的值時,會將PWM輸出接腳設為1,並且將TMRX清除為0,同時PWM的中斷旗標也會設為1。

當TMRX被清除為0的同時,會將DTX的值Latch在DLX內。

Note:

當要改變Period時必須先將PWM的功能Disable。

DutyCycle的計算公式入下所示:

DutyCycle=(DTX+1)×

(2∕FSCO)

FSCO=SystemClock

Period的計算公式入下所示:

Period=(PRDX+2)×

如圖11-3所示為PWM的功能方塊圖。

圖11-3:

PWM功能方塊圖

11-3、與PWM相關的暫存器

Ø

中斷旗標暫存器(InterruptFlagRegister)–INTF(0x11)

7

6

5

4

3

2

1

ADIF

RBFIF

PWM1IF

PWM0IF

EINT1F

EINT0F

TCCOF

FRCOF

✓Bit4~Bit5(PWM0IF&

PWM1IF):

PWM中斷旗標:

當TMRX等於PRDX時,中斷條件成立,此位元設為1。

以軟體指令清除。

PWMDutyCycle暫存器(PWMDuty)–DT0L(0x21)/DT0H(0x22)&

DT1L(0x27)/DT1H(0x28)

DT0L

DT07

DT06

DT05

DT04

DT03

DT02

DT01

DT00

DT0H

DT0F

DT0E

DT0D

DT0C

DT0B

DT0A

DT09

DT08

DT1L

DT17

DT16

DT15

DT14

DT13

DT12

DT11

DT10

DT1H

DT1F

DT1E

DT1D

DT1C

DT1B

DT1A

DT19

DT18

DT0H:

:

DT0L是PWM0輸出的DutyCycle。

DT1H:

DT1L是PWM1輸出的DutyCycle。

PWMPeriod暫存器(PWMPeriod)–PRD0L(0x23)/PRD0H(0x24)&

PRD1L(0x29)/PRD1H(0x2A)

PRD0L

PRD07

PRD06

PRD05

PRD04

PRD03

PRD02

PRD01

PRD00

PRD0H

PRD0F

PRD0E

PRD0D

PRD0C

PRD0B

PRD0A

PRD09

PRD08

PRD1L

PRD17

PRD16

PRD15

PRD14

PRD13

PRD12

PRD11

PRD10

PRD1H

PRD1F

PRD1E

PRD1D

PRD1C

PRD1B

PRD1A

PRD19

PRD18

PRD0H:

PRD0L是PWM0輸出Period。

PRD0L是PWM1輸出Period。

PWMDutyCycleLatch暫存器(PWMDutyLatch)–DL0L(0x25)/DL0H(0x26)&

DL1L(0x2B)/DL1H(0x2C)

DL0L

DL07

DL06

DL05

DL04

DL03

DL02

DL01

DL00

DL0H

DL0F

DL0E

DL0D

DL0C

DL0B

DL0A

DL09

DL08

DL1L

DL17

DL16

DL15

DL14

DL13

DL12

DL11

DL10

DL1H

DL1F

DL1E

DL1D

DL1C

DL1B

DL1A

DL19

DL18

DL0H:

DL0L是PWM0輸出DutyCycleLatch暫存器。

DL1H:

DL1L是PWM1輸出DutyCycleLatch暫存器。

Note:

這是唯讀的暫存器

週邊功能致能控制暫存器(PeripheralsEnableControl)–PRIE(0x80)

SPIE

USBE

WME

ADE

PWM1E

PWM0E

TCCE

FRCE

此暫存器控制是否啟用週邊功能。

當設為0時,表示不啟用該週邊功能,當設為1時,表示啟用該週邊功能。

✓Bit2(PWM0E):

脈寬調變0(PWM0)功能致能位元。

✓Bit3(PWM1E):

脈寬調變1(PWM1)功能致能位元。

中斷功能致能控制暫存器(InterruptsEnableControl)–INTE(0x81)

1

GIE

RBFIE

PWM1IE

PWM0IE

EINT1E

EINT0E

TCCOE

FRCOE

此暫存器控制是否啟用中斷功能。

當設為0時,表示不啟用中斷功能,當設為1時,表示啟用中斷功能。

✓Bit4(PWM0IE):

脈寬調變(PWM0)一個週期完成中斷功能致能位元。

✓Bit5(PWM1IE):

脈寬調變(PWM1)一個週期完成中斷功能致能位元。

脈寬調變控制暫存器(PWMControlRegister)–PWMCR(0x98)

-

S_PWM1

S_PWM0

✓Bit2(S_PWM0):

SelectedPWM0outputenable

此位元是設定PWM0輸出致能位元。

當設為0時,表示DisablePWM0輸出,當設為1時,表示EnablePWM0輸出。

✓Bit3(S_PWM1):

SelectedPWM1outputenable

此位元是設定PWM1輸出致能位元。

當設為0時,表示DisablePWM1輸出,當設為1時,表示EnablePWM1輸出。

✓Bit0,Bit1andBit4~Bit7:

保留

11-4、程式範例

1.實習1-PWM喇叭音效控制實習

動作說明

程式使用PWM功能,使喇叭發出聲音。

硬體連接

此範例使用ET44M210的實驗電路板。

程式說明

此範例使用PWM功能,

PWM0:

(2∕FSCO)=(33)×

(2∕6MHz)=11μs。

(2∕FSCO)=(259)×

(2∕6MHz)=86μs。

PWM1:

(2∕FSCO)=(1030)×

(2∕6MHz)=343μs。

程式一開始先起始PWM設定:

清除PWM相關暫存器,設定PWM暫存器的值。

主程式只需等待PWM中斷發生。

由於實驗電路板的喇叭是連接到PWM1,因此PWM0並不需要Enable。

流程圖

程式碼

 

PWM01.dt中副程式及程式區段說明

PWM01.dt程式共包含了5個副程式及程式區段,依照程式的撰寫順序有:

PWM:

、EXIT:

、CLR_PWM1_FLAG:

、INITIAL:

、PWM_START:

為了方便讀者閱讀瞭解,針對程式中所定義的LAB

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职业技术培训

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1