




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
單片微型計(jì)算機(jī)原理及接口技術(shù)(32)1/41內(nèi)容提綱STC8H8K64U單片機(jī)PWM模塊的應(yīng)用舉例-22/413、捕獲模式的應(yīng)用舉例(1)輸入捕獲模式測量脈沖波形的周期。原理:使用高級(jí)PWM內(nèi)部的某一通道的捕獲模塊CCx,捕獲外部的端口的上升沿或者下降沿,兩個(gè)上升沿之間或者兩個(gè)下降沿之間的時(shí)間即為脈沖的周期,也就是說,兩次捕獲計(jì)數(shù)值的差值即為周期值。只有PWM1P、PWM2P、PWM3P、PWM4P、PWM5、PWM6、PWM7、PWM8才有捕獲功能。3/413、捕獲模式的應(yīng)用舉例例:使用PWMA的第一組捕獲模塊CC1捕獲功能,捕獲PWM1P(P6.0)引腳上的上升沿,在中斷中對(duì)前后兩次的捕獲值相減得到周期。使用P4.2輸出周期為50ms,占空比2:5的波形進(jìn)行測試。4/41核心代碼
P_SW2|=0x80;//擴(kuò)展寄存器(XFR)訪問使能符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值P_SW2BAHEAXFR-I2C_S[1:0]CMPO_SS4_SS3_SS2_S0x00,0000P4M0=0x04;P4M1=0x00; //P4.2推挽輸出P6M0=0x00;P6M1=0x01; //P6.0高阻輸入PnM1.xPnM0.xI/O口模式00準(zhǔn)雙向口01推挽輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻)10僅為輸入(高阻)11開漏(OpenDrain)5/41符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值PWMA_PSFEB2HC4PS[1:0]C3PS[1:0]C2PS[1:0]C1PS[1:0]0000,0000PWMA_PS=0x02; //PWM通道輸出腳選擇位 PWM1P:P6.0高級(jí)PWM通道1的輸出腳可以在三個(gè)地方切換,由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。6/41預(yù)分頻器的設(shè)計(jì)原則:系統(tǒng)時(shí)鐘為11.0592MHz,不分頻時(shí),可以捕獲的波形最大周期為:65536/11.0592(us)≈5.926(ms)若周期超過6ms,則需要分頻。在本利中,周期為50毫秒,因此,預(yù)分頻器的值設(shè)置為9。PWMA_PSCRH=0x00; //預(yù)分頻寄存器PWMA_PSCRL=0x09; 符號(hào)地址b7b6b5b4b3b2b1b0PWMA_PSCRHFED0HPSCA[15:8]PWMA_PSCRLFED1HPSCA[7:0]7/41PWMA_CCER1=0x00; //關(guān)閉PWM通道1PWMA_CNTRH=0x00; //計(jì)數(shù)器清0PWMA_CNTRL=0x00;符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CNTRHFECEHCNTA[15:8]PWMA_CNTRLFECFHCNTA[7:0]8/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HIC1F[3:0]IC1PSC[1:0]CC1S[1:0]
PWMA_CCMR1=0x01; //CC1為輸入模式,且映射到TI1FP1上CC1S[1:0]:捕獲/比較1選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。01:輸入。IC1映射在TI1FP1上。9/41PWMA_CCER1=0x01; //使能CC1上的捕獲功能符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1ECC1P:OC1輸入捕獲/比較輸出極性。CC1通道配置為輸出時(shí):0:高電平有效;1:低電平有效。CC1通道配置為輸入或者捕獲:0:捕獲發(fā)生在TI1F或TI2F的上升沿;1:捕獲發(fā)生在TI1F或TI2F的下降沿。CC1E:OC1輸入捕獲/比較輸出使能。0:關(guān)閉輸入捕獲/比較輸出;1:開啟輸入捕獲/比較輸出。10/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_SMCRFEC2HMSMATSA[2:0]-SMSA[2:0]PWMA_SMCR=0x54; //TS=TI1FP1,SMS=TI1上升沿復(fù)位模式MSMn:主/從模式觸發(fā)輸入延遲控制位。0:無作用;1:觸發(fā)輸入(TRGI)上的事件被延遲。TSA[2:0]:PWMA觸發(fā)源選擇位。101:濾波后的定時(shí)器輸入1(TI1FP1)SMSA[2:0]:PWMA時(shí)鐘/觸發(fā)/從模式選擇位。100:復(fù)位模式。在選中的觸發(fā)輸入(TRGI)的上升沿時(shí)重新初始化計(jì)數(shù)器,并且產(chǎn)生一個(gè)更新寄存器的信號(hào)。11/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CR1FEC0HARPEACMSA[1:0]DIRAOPMAURSAUDISACENAPWMA_CR1=0x01;//開始計(jì)時(shí)CENn:允許計(jì)數(shù)器控制位。0:禁止計(jì)數(shù)器;1:使能計(jì)數(shù)器。12/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_IERFEC4HBIEATIEACOMIEACC4IECC3IECC2IECC1IEUIEAPWMA_IER=0x02; //使能CC1中斷CC1IE:捕獲/比較1中斷允許位。0:禁止捕獲/比較1中斷;1:允許捕獲/比較1中斷。13/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_SR1FEC5HBIFATIFACOMIFACC4IFCC3IFCC2IFCC1IFUIFAPWMA_SR1&=~0x02; //標(biāo)志清零CC1IF:捕獲/比較1中斷標(biāo)記。當(dāng)捕獲事件發(fā)生時(shí)該位由硬件置1,它由軟件清0或通過讀PWMA_CCR1L清0。0:無輸入捕獲產(chǎn)生;1:計(jì)數(shù)器值已被捕獲至PWMA_CCR1。14/41代碼演示!??!15/413、捕獲模式的應(yīng)用舉例(2)輸入捕獲模式測量脈沖波形的高電平寬度。原理:使用高級(jí)PWM內(nèi)部的兩通道的捕獲模塊CCx和CCx+1同時(shí)捕獲外部的同一個(gè)引腳,CCx捕獲此引腳的上升沿,CCx+1捕獲此引腳的下降沿,然利用CCx+1的捕獲值減去CCx的捕獲值,其差值即為脈沖高電平的寬度。注意:只有CC1+CC2、CC3+CC4、CC5+CC6、CC7+CC8這4種組合才能完成上面的功能。CC1+CC2組合可以同時(shí)捕獲PWM1P引腳,也可以同時(shí)捕獲PWM2P引腳;CC3+CC4組合可以同時(shí)捕獲PWM3P引腳,也可以同時(shí)捕獲PWM4P引腳;CC5+CC6組合可以同時(shí)捕獲PWM5引腳,也可以同時(shí)捕獲PWM6引腳;CC7+CC8組合可以同時(shí)捕獲PWM7引腳,也可以同時(shí)捕獲PWM8引腳。16/413、捕獲模式的應(yīng)用舉例例:使用PWMA的第一組捕獲模塊CC1捕獲功能和第二組捕獲模塊CC2,CC1捕獲PWM1P(P6.0)引腳上的上升沿,CC2捕獲PWM1P的下降沿,在中斷中使用CC2的捕獲值減去CC1的捕獲值,其差值即為脈沖高電平的寬度。使用P4.2輸出周期為50ms,占空比2:5的波形進(jìn)行測試。17/41核心代碼
P_SW2|=0x80;//擴(kuò)展寄存器(XFR)訪問使能符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值P_SW2BAHEAXFR-I2C_S[1:0]CMPO_SS4_SS3_SS2_S0x00,0000P4M0=0x04;P4M1=0x00; //P4.2推挽輸出P6M0=0x00;P6M1=0x01; //P6.0高阻輸入PnM1.xPnM0.xI/O口模式00準(zhǔn)雙向口01推挽輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻)10僅為輸入(高阻)11開漏(OpenDrain)18/41符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值PWMA_PSFEB2HC4PS[1:0]C3PS[1:0]C2PS[1:0]C1PS[1:0]0000,0000PWMA_PS=0x02; //PWM通道輸出腳選擇位 PWM1P:P6.0高級(jí)PWM通道1的輸出腳可以在三個(gè)地方切換,由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。19/41預(yù)分頻器的設(shè)計(jì)原則:系統(tǒng)時(shí)鐘為11.0592MHz,不分頻時(shí),可以捕獲的波形最大周期為:65536/11.0592(us)≈5.926(ms)若周期超過6ms,則需要分頻。在本利中,周期為50毫秒,因此,預(yù)分頻器的值設(shè)置為9。PWMA_PSCRH=0x00; //預(yù)分頻寄存器PWMA_PSCRL=0x09; 符號(hào)地址b7b6b5b4b3b2b1b0PWMA_PSCRHFED0HPSCA[15:8]PWMA_PSCRLFED1HPSCA[7:0]20/41PWMA_CCER1=0x00; //關(guān)閉PWM通道1PWMA_CNTRH=0x00; //計(jì)數(shù)器清0PWMA_CNTRL=0x00;符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CNTRHFECEHCNTA[15:8]PWMA_CNTRLFECFHCNTA[7:0]21/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCMR2FEC9HIC2F[3:0]IC2PSC[1:0]CC2S[1:0]符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HIC1F[3:0]IC1PSC[1:0]CC1S[1:0]PWMA_CCMR1=0x01; //CC1為輸入模式,且映射到TI1FP1上PWMA_CCMR1=0x02; //CC2為輸入模式,且映射到TI1FP2上CC1S[1:0]:捕獲/比較1選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。01:輸入。IC1映射在TI1FP1上。CC2S[1:0]:捕獲/比較2選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。10:輸入。IC2映射在TI1FP2上。22/41PWMA_CCER1=0x31;//使能CC1和CC2上的捕獲功能,CC1捕獲發(fā)生在TI1F的上升沿,CC2捕獲發(fā)生在TI1F的下降沿符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1ECC1P:OC1輸入捕獲/比較輸出極性。CC1通道配置為輸出時(shí):0:高電平有效;1:低電平有效。CC1通道配置為輸入或者捕獲:0:捕獲發(fā)生在TI1F或TI2F的上升沿;1:捕獲發(fā)生在TI1F或TI2F的下降沿。CC1E:OC1輸入捕獲/比較輸出使能。0:關(guān)閉輸入捕獲/比較輸出;1:開啟輸入捕獲/比較輸出。23/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CR1FEC0HARPEACMSA[1:0]DIRAOPMAURSAUDISACENAPWMA_CR1=0x01;//開始計(jì)時(shí)CENn:允許計(jì)數(shù)器控制位。0:禁止計(jì)數(shù)器;1:使能計(jì)數(shù)器。24/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_IERFEC4HBIEATIEACOMIEACC4IECC3IECC2IECC1IEUIEAPWMA_IER=0x04; //使能CC2中斷CC2IE:捕獲/比較2中斷允許位。0:禁止捕獲/比較2中斷;1:允許捕獲/比較2中斷。25/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_SR1FEC5HBIFATIFACOMIFACC4IFCC3IFCC2IFCC1IFUIFAPWMA_SR1&=~0x04; //標(biāo)志清零CC2IF:捕獲/比較2中斷標(biāo)記。當(dāng)捕獲事件發(fā)生時(shí)該位由硬件置1,它由軟件清0或通過讀PWMA_CCR2L清0。0:無輸入捕獲產(chǎn)生;1:計(jì)數(shù)器值已被捕獲至PWMA_CCR2。26/41代碼演示?。?!27/413、捕獲模式的應(yīng)用舉例(3)輸入捕獲模式測量脈沖波形的周期和高電平寬度。原理:使用高級(jí)PWM內(nèi)部的兩通道的捕獲模塊CCx和CCx+1同時(shí)捕獲外部的同一個(gè)引腳,CCx捕獲此引腳的上升沿,CCx+1捕獲此引腳的下降沿,同時(shí)使能此引腳的上升沿信號(hào)為復(fù)位觸發(fā)信號(hào),CCx的捕獲值即為周期,CCx+1的捕獲值即為高電平寬度。注意:只有CC1+CC2、CC3+CC4、CC5+CC6、CC7+CC8這4種組合才能完成上面的功能。CC1+CC2組合可以同時(shí)捕獲PWM1P引腳,也可以同時(shí)捕獲PWM2P引腳;CC3+CC4組合可以同時(shí)捕獲PWM3P引腳,也可以同時(shí)捕獲PWM4P引腳;CC5+CC6組合可以同時(shí)捕獲PWM5引腳,也可以同時(shí)捕獲PWM6引腳;CC7+CC8組合可以同時(shí)捕獲PWM7引腳,也可以同時(shí)捕獲PWM8引腳。28/413、捕獲模式的應(yīng)用舉例例:使用PWMA的第一組捕獲模塊CC1捕獲功能和第二組捕獲模塊CC2,CC1捕獲PWM1P(P6.0)引腳上的上升沿,CC2捕獲PWM1P的下降沿,并設(shè)置PWM1P的上升沿信號(hào)為復(fù)位觸發(fā)信號(hào),CC1的捕獲值即為周期,CC2的捕獲值即為占空比。。使用P4.2輸出周期為50ms,占空比2:3的波形進(jìn)行測試。29/41核心代碼
P_SW2|=0x80;//擴(kuò)展寄存器(XFR)訪問使能符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值P_SW2BAHEAXFR-I2C_S[1:0]CMPO_SS4_SS3_SS2_S0x00,0000P4M0=0x04;P4M1=0x00; //P4.2推挽輸出P6M0=0x00;P6M1=0x01; //P6.0高阻輸入PnM1.xPnM0.xI/O口模式00準(zhǔn)雙向口01推挽輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻)10僅為輸入(高阻)11開漏(OpenDrain)30/41符號(hào)地址b7b6b5b4b3b2b1b0復(fù)位值PWMA_PSFEB2HC4PS[1:0]C3PS[1:0]C2PS[1:0]C1PS[1:0]0000,0000PWMA_PS=0x02; //PWM通道輸出腳選擇位 PWM1P:P6.0高級(jí)PWM通道1的輸出腳可以在三個(gè)地方切換,由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。31/41預(yù)分頻器的設(shè)計(jì)原則:系統(tǒng)時(shí)鐘為11.0592MHz,不分頻時(shí),可以捕獲的波形最大周期為:65536/11.0592(us)≈5.926(ms)若周期超過6ms,則需要分頻。在本利中,周期為50毫秒,因此,預(yù)分頻器的值設(shè)置為9。PWMA_PSCRH=0x00; //預(yù)分頻寄存器PWMA_PSCRL=0x09; 符號(hào)地址b7b6b5b4b3b2b1b0PWMA_PSCRHFED0HPSCA[15:8]PWMA_PSCRLFED1HPSCA[7:0]32/41PWMA_CCER1=0x00; //關(guān)閉PWM通道1PWMA_CNTRH=0x00; //計(jì)數(shù)器清0PWMA_CNTRL=0x00;符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CNTRHFECEHCNTA[15:8]PWMA_CNTRLFECFHCNTA[7:0]33/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCMR2FEC9HIC2F[3:0]IC2PSC[1:0]CC2S[1:0]符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCMR1FEC8HIC1F[3:0]IC1PSC[1:0]CC1S[1:0]PWMA_CCMR1=0x01; //CC1為輸入模式,且映射到TI1FP1上PWMA_CCMR2=0x02; //CC2為輸入模式,且映射到TI1FP2上CC1S[1:0]:捕獲/比較1選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。01:輸入。IC1映射在TI1FP1上。CC2S[1:0]:捕獲/比較2選擇。定義通道的方向(輸入/輸出),及輸入腳的選擇。10:輸入。IC2映射在TI1FP2上。34/41PWMA_CCER1=0x31;//使能CC1和CC2上的捕獲功能,CC1捕獲發(fā)生在TI1F的上升沿,CC2捕獲發(fā)生在TI1F的下降沿符號(hào)地址b7b6b5b4b3b2b1b0PWMA_CCER1FECCHCC2NPCC2NECC2PCC2ECC1NPCC1NECC1PCC1ECC1P:OC1輸入捕獲/比較輸出極性。CC1通道配置為輸出時(shí):0:高電平有效;1:低電平有效。CC1通道配置為輸入或者捕獲:0:捕獲發(fā)生在TI1F或TI2F的上升沿;1:捕獲發(fā)生在TI1F或TI2F的下降沿。CC1E:OC1輸入捕獲/比較輸出使能。0:關(guān)閉輸入捕獲/比較輸出;1:開啟輸入捕獲/比較輸出。35/41符號(hào)地址b7b6b5b4b3b2b1b0PWMA_SMCRFEC2HMSMATSA[2:0]-SMSA[2:0]PWMA_SMCR=0x54; //TS=TI1FP1,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療器械質(zhì)量管理體系的國際化標(biāo)準(zhǔn)解讀
- 醫(yī)療信息共享的倫理與法律電子病歷與隱私保護(hù)的平衡
- 減少醫(yī)療浪費(fèi)提高資源利用效率
- 醫(yī)療AI技術(shù)的發(fā)展及其對(duì)健康產(chǎn)業(yè)的貢獻(xiàn)分析
- HIPAA政策解析及其實(shí)施要點(diǎn)詳解
- 醫(yī)療大數(shù)據(jù)與決策科學(xué)融合的未來
- 醫(yī)療器械法規(guī)對(duì)康復(fù)機(jī)器人研發(fā)的規(guī)范與引導(dǎo)
- 彌漫性食管壁內(nèi)憩室的臨床護(hù)理
- 代理廣告租賃合同范例
- 全生命周期健康管理平臺(tái)的未來趨勢(shì)分析
- 法律文化-形考作業(yè)3-國開(ZJ)-參考資料
- 2025屆東北三省四市高三第二次聯(lián)考英語試卷含答案
- 2024年江蘇省南京市中考物理試卷真題(含答案)
- DL-T 1476-2023 電力安全工器具預(yù)防性試驗(yàn)規(guī)程
- 監(jiān)理工程師通知回復(fù)單11
- 立式加工中心操作指導(dǎo)書
- 禁毒學(xué)校青少年預(yù)防遠(yuǎn)離毒品教育模板課件
- 汽車4S店售后回訪流程
- SCAN-企業(yè)危機(jī)計(jì)劃及風(fēng)險(xiǎn)評(píng)估管理程序
- 舉升機(jī)每日維護(hù)檢查表
- DB32-T 3897-2020地方政府規(guī)章立法規(guī)范-(高清現(xiàn)行)
評(píng)論
0/150
提交評(píng)論