單片微型計(jì)算機(jī)原理及接口技術(shù)-31-PWM模塊-5_第1頁
單片微型計(jì)算機(jī)原理及接口技術(shù)-31-PWM模塊-5_第2頁
單片微型計(jì)算機(jī)原理及接口技術(shù)-31-PWM模塊-5_第3頁
單片微型計(jì)算機(jī)原理及接口技術(shù)-31-PWM模塊-5_第4頁
單片微型計(jì)算機(jī)原理及接口技術(shù)-31-PWM模塊-5_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

單片微型計(jì)算機(jī)原理及接口技術(shù)(31)1/28內(nèi)容提綱STC8H8K64U單片機(jī)PWM模塊的應(yīng)用舉例-12/281、PWM輸出模式的應(yīng)用步驟(1)設(shè)置與PWM復(fù)用的IO口的工作模式。(設(shè)置PiM1、PiM0寄存器,若電路設(shè)計(jì)中設(shè)置了上拉電阻,可設(shè)置為漏極開路模式)(2)通道輸出腳選擇。(設(shè)置PWMx_PS寄存器)(3)關(guān)閉通道。(設(shè)置PWMx_CCER1和PWMx_CCER2寄存器,清零其中的CCxE位。要設(shè)置PWM的相關(guān)參數(shù),必須先關(guān)閉通道)(4)配置通道模式。(設(shè)置PWMx_CCMR1、PWMx_CCMR2、PWMx_CCMR3和PWMx_CCMR4寄存器)(5)配置通道輸出使能和極性。(設(shè)置PWMx_CCER1和PWMx_CCER2寄存器)(6)設(shè)置周期時(shí)間。(設(shè)置PWMx_ARRH和PWMx_ARRL寄存器)3/281、PWM輸出模式的應(yīng)用步驟(7)使能輸出。(設(shè)置PWMx_ENO寄存器)(8)使能主輸出。(設(shè)置PWMx_BKR寄存器中的MOEx位=1)(9)啟動PWM計(jì)時(shí)器。(設(shè)置PWMx_CR1寄存器中的CENx=1)(10)根據(jù)需要調(diào)整PWMx_CCR寄存器的值便可以修改PWM輸出的占空比。4/282、PWM輸出模式的應(yīng)用舉例(1)利用PWM1P的輸出控制連接的LED燈,實(shí)現(xiàn)呼吸燈效果。P4.0控制給發(fā)光二極管上電。PWM1P與P6.0復(fù)用。每隔1ms更新PWM的占空比。5/28核心代碼

P_SW2|=0x80;//擴(kuò)展寄存器(XFR)訪問使能符號地址b7b6b5b4b3b2b1b0復(fù)位值P_SW2BAHEAXFR-I2C_S[1:0]CMPO_SS4_SS3_SS2_S0x00,0000P4M1=0x0;P4M0=0x0;//設(shè)置P4口為準(zhǔn)雙向口P6M1=0xff;P6M0=0xff;//設(shè)置為漏極開路(實(shí)驗(yàn)箱加了上拉電阻到3.3V)PnM1.xPnM0.xI/O口模式00準(zhǔn)雙向口01推挽輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻)10僅為輸入(高阻)11開漏(OpenDrain)6/28符號地址b7b6b5b4b3b2b1b0復(fù)位值PWMA_PSFEB2HC4PS[1:0]C3PS[1:0]C2PS[1:0]C1PS[1:0]0000,0000

PWMA_PS=0x02;//高級PWM通道輸出腳選擇位高級PWM通道1的輸出腳可以在三個地方切換,由C1PS[1:0]選擇:00:PWM1P在P1.0/PWM1P,PWM1N在P1.1/PWM1N;01:PWM1P在P2.0/PWM1P_2,PWM1N在P2.1/PWM1N_2;10:PWM1P在P6.0/PWM1P_3,PWM1N在P6.1/PWM1N_3。7/28符號地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HOC1CEOC1M[2:0]OC1PEOC1FECC1S[1:0]

PWMA_CCER1=0x00;//寫CCMRx前必須先清零CCxE關(guān)閉通道

PWMA_CCMR1=0x68;//通道模式配置OC1CE:輸出比較1清零使能。該位用于使能使用PWMETI引腳上的外部事件來清通道1的輸出信號(OC1REF)。0:OC1REF不受ETRF輸入的影響;OCnM[2:0]:輸出比較n模式。110:PWM模式1。在向上計(jì)數(shù)時(shí),當(dāng)PWMn_CNT<PWMn_CCR1時(shí),OCnREF輸出高,否則OCnREF輸出低;在向下計(jì)數(shù)時(shí),當(dāng)PWMn_CNT>PWMn_CCR1時(shí),OCnREF輸出低,否則OCnREF輸出高。8/28符號地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HOC1CEOC1M[2:0]OC1PEOC1FECC1S[1:0]

PWMA_CCER1=0x00;//寫CCMRx前必須先清零CCxE關(guān)閉通道

PWMA_CCMR1=0x68;//通道模式配置OCnPE:輸出比較n預(yù)裝載使能(n=1,5)。1:開啟PWMn_CCR1寄存器的預(yù)裝載功能,讀寫操作僅對預(yù)裝載寄存器操作,PWMn_CCR1的預(yù)裝載值在更新事件到來時(shí)被加載至當(dāng)前寄存器中。OC1FE:輸出比較1快速使能。0:根據(jù)計(jì)數(shù)器與CCR1的值,CC1正常操作。CC1S[1:0]:捕獲/比較1選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。00:輸出。9/28符號地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1EPWMA_CCER1=0x01;//配置通道輸出使能和極性CC1P:OC1輸入捕獲/比較輸出極性。CC1通道配置為輸出時(shí):0:高電平有效;1:低電平有效。CC1通道配置為輸入或者捕獲:0:捕獲發(fā)生在TI1F或TI2F的上升沿;1:捕獲發(fā)生在TI1F或TI2F的下降沿。CC1E:OC1輸入捕獲/比較輸出使能。0:關(guān)閉輸入捕獲/比較輸出;1:開啟輸入捕獲/比較輸出。10/28PWMA_ARRH=(u8)(PWM_PERIOD>>8);//設(shè)置周期時(shí)間

PWMA_ARRL=(u8)PWM_PERIOD;符號地址b7b6b5b4b3b2b1b0PWMA_ARRHFED2HARRA[15:8]PWMA_ARRLFED3HARRA[7:0]PWMA_ENO=0x01; //使能輸出符號地址b7b6b5b4b3b2b1b0PWMA_ENOFEB1HENO4NENO4PENO3NENO3PENO2NENO2PENO1NENO1PENO1P:PWM1P輸出控制位。0:禁止PWM1P輸出;1:使能PWM1P輸出。11/28符號地址b7b6b5b4b3b2b1b0PWMA_BKRFEDDHMOEAAOEABKPABKEAOSSRAOSSIALOCKA[1:0]PWMA_BKR=0x80;//使能主輸出MOEn:主輸出使能。一旦剎車輸入有效,該位被硬件異步清0。根據(jù)AOE位的設(shè)置值,該位可以由軟件置1或被自動置1。它僅對配置為輸出的通道有效。(n=A,B,下同)0:禁止OC和OCN輸出或強(qiáng)制為空閑狀態(tài)1:如果設(shè)置了相應(yīng)的使能位(PWMn_CCERx寄存器的CCIE位),則使能OCn和OCnN輸出。12/28符號地址b7b6b5b4b3b2b1b0PWMA_CR1FEC0HARPEACMSA[1:0]DIRAOPMAURSAUDISACENAPWMA_CR1=0x01;//開始計(jì)時(shí)CENn:允許計(jì)數(shù)器控制位。0:禁止計(jì)數(shù)器;1:使能計(jì)數(shù)器。PWMA_CCR1H=(u8)(PWM1_Duty>>8);//設(shè)置占空比時(shí)間

PWMA_CCR1L=(u8)(PWM1_Duty);符號地址b7b6b5b4b3b2b1b0PWMA_CCR1HFED5HCCR1[15:8]PWMA_CCR1LFED6HCCR1[7:0]13/28代碼演示?。。?4/282、PWM輸出模式的應(yīng)用舉例(2)利用PWM1P和PWM1N的輸出控制連接的LED燈,實(shí)現(xiàn)呼吸燈效果。(互補(bǔ)對稱輸出)P4.0控制給發(fā)光二極管上電。PWM1P與P6.0復(fù)用。PWM1N與P6.1復(fù)用。每隔1ms更新PWM的占空比。15/28核心代碼

P_SW2|=0x80;//擴(kuò)展寄存器(XFR)訪問使能符號地址b7b6b5b4b3b2b1b0復(fù)位值P_SW2BAHEAXFR-I2C_S[1:0]CMPO_SS4_SS3_SS2_S0x00,0000P4M1=0x0;P4M0=0x0;//設(shè)置P4口為準(zhǔn)雙向口P6M1=0xff;P6M0=0xff;//設(shè)置為漏極開路(實(shí)驗(yàn)箱加了上拉電阻到3.3V)PnM1.xPnM0.xI/O口模式00準(zhǔn)雙向口01推挽輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻)10僅為輸入(高阻)11開漏(OpenDrain)16/28符號地址b7b6b5b4b3b2b1b0復(fù)位值PWMA_PSFEB2HC4PS[1:0]C3PS[1:0]C2PS[1:0]C1PS[1:0]0000,0000

PWMA_PS=0x02;//高級PWM通道輸出腳選擇位高級PWM通道1的輸出腳可以在三個地方切換,由C1PS[1:0]選擇:00:PWM1P在P1.0/PWM1P,PWM1N在P1.1/PWM1N;01:PWM1P在P2.0/PWM1P_2,PWM1N在P2.1/PWM1N_2;10:PWM1P在P6.0/PWM1P_3,PWM1N在P6.1/PWM1N_3。17/28符號地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HOC1CEOC1M[2:0]OC1PEOC1FECC1S[1:0]

PWMA_CCER1=0x00;//寫CCMRx前必須先清零CCxE關(guān)閉通道

PWMA_CCMR1=0x68;//通道模式配置OC1CE:輸出比較1清零使能。該位用于使能使用PWMETI引腳上的外部事件來清通道1的輸出信號(OC1REF)。0:OC1REF不受ETRF輸入的影響;OCnM[2:0]:輸出比較n模式。110:PWM模式1。在向上計(jì)數(shù)時(shí),當(dāng)PWMn_CNT<PWMn_CCR1時(shí),OCnREF輸出高,否則OCnREF輸出低;在向下計(jì)數(shù)時(shí),當(dāng)PWMn_CNT>PWMn_CCR1時(shí),OCnREF輸出低,否則OCnREF輸出高。18/28符號地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HOC1CEOC1M[2:0]OC1PEOC1FECC1S[1:0]

PWMA_CCER1=0x00;//寫CCMRx前必須先清零CCxE關(guān)閉通道

PWMA_CCMR1=0x68;//通道模式配置OCnPE:輸出比較n預(yù)裝載使能(n=1,5)。1:開啟PWMn_CCR1寄存器的預(yù)裝載功能,讀寫操作僅對預(yù)裝載寄存器操作,PWMn_CCR1的預(yù)裝載值在更新事件到來時(shí)被加載至當(dāng)前寄存器中。OC1FE:輸出比較1快速使能。0:根據(jù)計(jì)數(shù)器與CCR1的值,CC1正常操作。CC1S[1:0]:捕獲/比較1選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。00:輸出。19/28符號地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1EPWMA_CCER1=0x05;//配置通道輸出使能和極性CC1NP:OC1N比較輸出極性。0:高電平有效;1:低電平有效。CC1NE:OC1N比較輸出使能。0:關(guān)閉比較輸出。1:開啟比較輸出,其輸出電平依賴于MOE、OSSI、OSSR、OIS1、OIS1N和CC1E位的值。20/28符號地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1EPWMA_CCER1=0x05;//配置通道輸出使能和極性CC1P:OC1輸入捕獲/比較輸出極性。CC1通道配置為輸出時(shí):0:高電平有效;1:低電平有效。CC1通道配置為輸入或者捕獲:0:捕獲發(fā)生在TI1F或TI2F的上升沿;1:捕獲發(fā)生在TI1F或TI2F的下降沿。CC1E:OC1輸入捕獲/比較輸出使能。0:關(guān)閉輸入捕獲/比較輸出;1:開啟輸入捕獲/比較輸出。21/28PWMA_ARRH=(u8)(PWM_PERIOD>>8);//設(shè)置周期時(shí)間

PWMA_ARRL=(u8)PWM_PERIOD;符號地址b7b6b5b4b3b2b1b0PWMA_ARRHFED2HARRA[15:8]PWMA_ARRLFED3HARRA[7:0]PWMA_ENO=0x03; //使能輸出符號地址b7b6b5b4b3b2b1b0PWMA_ENOFEB1HENO4NENO4PENO3NENO3PENO2NENO2PENO1NENO1PENO1N:PWM1N輸出控制位。0:禁止PWM1N輸出;1:使能PWM1N輸出。ENO1P:PWM1P輸出控制位。0:禁止PWM1P輸出;1:使能PWM1P輸出。22/28符號地址b7b6b5b4b3b2b1b0PWMA_BKRFEDDHMOEAAOEABKPABKEAOSSRAOSSIALOCKA[1:0]PWMA_BKR=0x80;//使能主輸出MOEn:主輸出使能。一旦剎車輸入有效,該位被硬件異步清0。根據(jù)AOE位的設(shè)置值,該位可以由軟件置1或被自動置1。它僅對配置為輸出的通道有效。(n=A,B,下同)0:禁止OC和OCN輸出或強(qiáng)制為空閑狀態(tài)1:如果設(shè)置了相應(yīng)的使能位(PWMn_CCERx寄存器的CCIE位),則使能OCn

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論