試驗(yàn)6 脈寬調(diào)制實(shí)驗(yàn)_第1頁(yè)
試驗(yàn)6 脈寬調(diào)制實(shí)驗(yàn)_第2頁(yè)
試驗(yàn)6 脈寬調(diào)制實(shí)驗(yàn)_第3頁(yè)
試驗(yàn)6 脈寬調(diào)制實(shí)驗(yàn)_第4頁(yè)
試驗(yàn)6 脈寬調(diào)制實(shí)驗(yàn)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

按試驗(yàn)臺(tái)號(hào)就坐,每個(gè)試驗(yàn)臺(tái)2名學(xué)生。3班坐1—18試驗(yàn)臺(tái),2班坐19—27試驗(yàn)臺(tái)。若您的電腦沒(méi)有看到老師的屏幕,請(qǐng)修改你的IP地址為試驗(yàn)臺(tái)號(hào)安靜試驗(yàn)7CCP模塊試驗(yàn)Capture/Compare/PWMModule

CCPModule1、試驗(yàn)名稱(chēng)

CCP模塊試驗(yàn)----PWM脈寬調(diào)制試驗(yàn)//1、今天的完成1khz占空比0.5的PWM脈沖信號(hào)的輸出//2、完成8khz,占空比1/8的PWM脈沖信號(hào)的輸出//3、完成400hz,占空比1/2的PWM脈沖信號(hào)的輸出

2、試驗(yàn)?zāi)康膶W(xué)習(xí)PWM模塊的使用,輸出PWM信號(hào)3、試驗(yàn)設(shè)備硬件環(huán)境:微機(jī)、ICD2調(diào)試器、實(shí)驗(yàn)板軟件環(huán)境:MPLABIDE、HI-TECHC語(yǔ)言工具4、試驗(yàn)電路RC2/CCP2RC1/CCP2引腳5、試驗(yàn)原理

PWM則是輸出脈沖寬度可調(diào)的信號(hào),脈沖的周期Period和工作循環(huán)周期DutyCycle是由內(nèi)部的定時(shí)器產(chǎn)生的,也需要定時(shí)器的配合。與TMR2配合,是8位的。

PWM功能PWM功能所使用的時(shí)基是Timer2,是8位的,再加上預(yù)分頻器的兩位,PWM分辨率可達(dá)到10位。要輸出PWM信號(hào),需注意PWM信號(hào)的周期和工作循環(huán)周期DutyCycle。有兩個(gè)寄存器分別存儲(chǔ)PWM的周期值Period和工作循環(huán)周期值,PR2和CCPRxL.在Timer2從零開(kāi)始遞增時(shí),會(huì)和PR2和CCPRxL的值比較,開(kāi)始時(shí)PWM輸出高電平,當(dāng)TMR2值和CCPRxL寄存器相等時(shí),PWM輸出變低,然后繼續(xù)遞增,當(dāng)TMR2值和PR2寄存器值相等時(shí),TMR2歸零并重新計(jì)數(shù)。周期period=(PR2+1)*4Tosc*TMR2預(yù)分頻例如:設(shè)置PR2=0XFF;T2CON=0x05;晶振選擇4MHZ,則Tosc=0.25us則周期為:(255+1)*4*0.25us*4=1024us則頻率是:1/1.024ms=1KHZ占空比q=(高電平時(shí)間)/周期

10位脈寬寄存器(CCPRxL和CCPxCON的bit5—bit4構(gòu)成10位)10位并行受控三態(tài)門(mén)10位比較器10位定時(shí)器TMR28位比較器8位周期寄存器RS寄存器輸出級(jí)受控三態(tài)門(mén)7.2.1相關(guān)的寄存器INTCON:中斷控制寄存器PIR1: 第一外設(shè)中斷標(biāo)志寄存器PIR2: 第二外設(shè)中斷標(biāo)志寄存器PIE1: 第一外設(shè)中斷屏蔽寄存器PIE2: 第二外設(shè)中斷屏蔽寄存器TRISC: RC口方向寄存器TMR1L: 定時(shí)器1低字節(jié)TMR1H:定時(shí)器1高字節(jié)T1CON: TRM1控制寄存器CCPR1L: CCP1低字節(jié)CCPR1H: CCP1高字節(jié)CCP1CON: CCP1控制器CCPR2L: CCP2低字節(jié)CCPR2H: CCP2高字節(jié)CCP2CON: CCP2控制器CCP1CON寄存器的介紹bit7bit6bit5bit4bit3bit2bit1bit0--CCPxXCCPxYM3m2m1m0Bit7bit6:沒(méi)有使用。0x3C00111100Bit5-bt4:脈寬寄存器低2位,高8位在CCPR1L里Bit3-bit0:工作模式選擇位0000:關(guān)閉CCP1模塊11XX:脈寬調(diào)制PWM模式,低2位不起作用。TMR2的使用TIMER2是一個(gè)帶有預(yù)分頻器和后分頻器的8位定時(shí)器,TMR2是可讀寫(xiě)的,任何單片機(jī)的復(fù)位都將其清零。輸入時(shí)鐘(fosc/4)有1,4,16分配選擇,通過(guò)T2CON的控制位T2CKPS1-0來(lái)選擇。Timer2有一個(gè)8位周期PR2寄存器,timer2從00h遞增到和PR2相等時(shí),PR2復(fù)位到00h,進(jìn)行下一次遞增。PR2是可讀寫(xiě)的,PR2通過(guò)復(fù)位初始化到FFH.TMR2的匹配輸出通過(guò)一個(gè)4位后分頻器產(chǎn)生一個(gè)TMR2中斷TMR2IF.T2CON寄存器的使用Bit7 沒(méi)有使用0x0500000101Bit6-3后分頻器選擇位Bit2:TMR2ON1=TIMER2ISON0=OFFBit1-0:預(yù)分頻選擇位

00=預(yù)分頻比率是1 01=預(yù)分頻比率是4 1x=預(yù)分頻比率是166參考程序#include<pic.h>//作業(yè)8:試編寫(xiě)程序,使用CCP1輸出分辨率為10位的PWM波形,占空比為0.5,頻率為1khz。并說(shuō)明原因。voidCCP1INIT(){TRISC=0X00; //RC2為輸出CCPR1L=0X7F;//工作循環(huán)時(shí)間,高電平時(shí)間的高8位:01111111xxCCP1CON=0X3C; //00111100,設(shè)置為PWM模式,

//bit5-4是11,是工作循環(huán)時(shí)間的低2位,INTCON=0X00; //禁止外部一切中斷PR2=0XFF; //設(shè)置周期

}main(){ CCP1INIT(); T2CON=0X05; //打開(kāi)T2,使其預(yù)分頻為4分頻

while(1); }7程序結(jié)果計(jì)算頻率:周期period=(PR2+1)*4Tosc*TMR2預(yù)分頻例如:設(shè)置PR2=0XFF;T2CON=0x05;晶振選擇4MHZ,則Tosc=0.25us則周期為:(255+1)*4*0.25us*4=1024us則頻率是:1/1.024ms=1KHZ聽(tīng)1khz的聲音,修改周期,聽(tīng)聽(tīng)4khz的聲音。完成8khz、16khz、32khz的脈沖輸出,占空比均是0.5完成500hz、400hz、10hz、2hz的脈沖波形輸出。祝您成功定時(shí)器0(TMR0)8位的定時(shí)/計(jì)數(shù)器可讀可寫(xiě)附一8位的軟件可編程預(yù)分頻器內(nèi)部或外部時(shí)鐘可選當(dāng)從FFh計(jì)數(shù)溢出到00h時(shí),可產(chǎn)生中斷當(dāng)選外部時(shí)鐘時(shí),計(jì)數(shù)脈沖觸發(fā)沿可選相關(guān)的4個(gè)控制寄存器TMR0 8位寬的累加計(jì)數(shù)寄存器OPTION_REG 選項(xiàng)寄存器INTCON 中斷控制寄存器TRISA RA口方向寄存器選項(xiàng)控制寄存器OPTION_REGbit7bit6bit5bit4bit3bit2bit1bit0RBPUINTEDGT0CST0SEPSAPS2PS1PS0T0CS:時(shí)鐘源選擇位,

1=外部引腳輸入的脈沖觸發(fā). 0=內(nèi)部指令周期信號(hào)T0SE:邊沿觸發(fā)選擇位,計(jì)數(shù)模式時(shí)有效, 1=外部始終T0CK下降沿觸發(fā)TMR0增1. 0=外部始終T0CK上降沿觸發(fā)TMR0增1PSA=1

預(yù)分頻器分配給WDTPSA=0

預(yù)分頻器分配給TIME0PS2~PS0對(duì)應(yīng)的分頻比PS2~PS0TMR0比率WDT比率0001:21:10011:41:20101:81:40111:161:81001:321:161011:641:321101:1281:641111:2561:128相關(guān)的4個(gè)控制寄存器TMR0 8位寬的累加計(jì)數(shù)寄存器OPTION_REG 選項(xiàng)寄存器INTCON 中斷控制寄存器TRISA RA口方向寄存器中斷控制寄存器INTCONbit7bit6bit5bit4bit3bit2bit1bit0GIEPEIET0IEINTERBIET0IFINTFRBIFT0IF=1發(fā)生溢出0未發(fā)生溢出T0IE=1允許TMR0溢出后產(chǎn)生中斷0不使能GIE=1允許CPU響應(yīng)外圍設(shè)備產(chǎn)生的中斷請(qǐng)求TMR0和內(nèi)部時(shí)鐘同步Fosc/4外部時(shí)鐘輸入溢出時(shí)中斷標(biāo)志T0IF被置1T0SE8位可編程預(yù)分頻器PS2,PS1,PS03PSAT0CS(2個(gè)周期延時(shí))8位數(shù)據(jù)總線TMR0電路結(jié)構(gòu)工作原理TMR0初始化voidinitial(){ INTCON=0x00; //全局中斷禁止

INTCON,GIE=1; //允許沒(méi)有屏蔽的中斷向CPU請(qǐng)求。

TRISB=0B11111000; //設(shè)置B0管腳為輸出

TRISC=0X00; TMR0=0X01; //置定時(shí)器初值,255*1*1us=255us,fosc=4Mhz,指令周期 是1us T0CS=0; //工作于定時(shí)模式

PSA=0; //把預(yù)分頻分配給TIME0, PS2=0; //分頻256,則定時(shí)時(shí)間是256us*256=65535us=65.535ms PS1=0; PS0=1; T0IE=1; //T0中斷允許

T0IF=0; //清T0中斷標(biāo)志 }6、參考程序

定時(shí)器TIME0使用舉例#include <pic.h>intk=0; //定義變量kvoidinitial(){…}voidinterruptwww0() //中斷的唯一入口{ T0IF=0; k=k+1;}main(){ initial(); /*初始化*/ PORTB=0Xf0; while(1) {if((k>0)&(k<=5)) RC2=1; //通5ms elseif((k>5)&(k<10)) RC2=0; //斷5ms,周期是100HZ elseif(k>=10) k=0; }}6、參考程序#include<pic.h> //文件包含指一個(gè)源文件將另外一個(gè)源文件的全部?jī)?nèi)容包含進(jìn)來(lái)。voiddelay_xs(void) //定義了一個(gè)函數(shù),大概延時(shí)1秒鐘{ unsignedinti; i=6553;

while(i>0) i=i-1;}voidmain() //每個(gè)C程序都必須有一個(gè)main函數(shù){ intk=0; TRISB=0X00; //定義B口為輸出

TRISC=0X00; //定義B口為輸出

while(1) //循環(huán)語(yǔ)句

{ PORTB=0B00000001; //點(diǎn)亮

delay_xs(); //延時(shí)

PORTB=0B00000010;

delay_xs(); PORTB=0B00000100;

delay_xs(); PORTB=0B00001000;

delay_xs(); PORTB=0B00000000;

delay_xs(); }}7、試驗(yàn)步驟1、安裝軟件MPLABIDE2、安裝ICD2USB驅(qū)動(dòng)3、啟動(dòng)MPLABIDE4、新建工程Project工程名字:學(xué)號(hào)5、用文本編輯器編輯源文件:led001.c6、建立通訊7

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論