飛思卡爾8位單片機(jī)MC9S08 12 GP32的其他功能模塊_第1頁(yè)
飛思卡爾8位單片機(jī)MC9S08 12 GP32的其他功能模塊_第2頁(yè)
飛思卡爾8位單片機(jī)MC9S08 12 GP32的其他功能模塊_第3頁(yè)
飛思卡爾8位單片機(jī)MC9S08 12 GP32的其他功能模塊_第4頁(yè)
飛思卡爾8位單片機(jī)MC9S08 12 GP32的其他功能模塊_第5頁(yè)
已閱讀5頁(yè),還剩29頁(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)介

1、第十二章 GP32的其他功能模塊主要內(nèi)容 CONFIG寄存器 時(shí)鐘發(fā)生模塊CGM與鎖相環(huán)PLL 中斷 復(fù)位與系統(tǒng)集成模塊 低功耗模式與看門狗功能 監(jiān)控模塊MON嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件112.1 CONFIG寄存器(1)CONFIG2 CONFIG2寄存器只有低兩位有定義,CONFIG2的地址是:$001E,定義為: 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件數(shù)據(jù)位 D7 D6 D5 D4 D3 D2 D1 D0定義 OSCSTOPENB SCIBDSRC 復(fù)位 0 0 0 0 0 0 0 0 D1OSCSTOPENB位:振蕩器STOP模式下允許位。OSCSTOPENB=1,振蕩器在STOP模式下也正常工作

2、。這一點(diǎn)對(duì)于時(shí)基模塊在STOP模式下產(chǎn)生周期性的喚醒非常有用。OSCSTOPENB=0,在STOP模式下禁止振蕩器工作。 D0SCIBDSRC位:SCI波特率時(shí)鐘源控制位。SCIBDSRC控制SCI的時(shí)鐘源。這個(gè)位的設(shè)置影響SCI操作的頻率。SCIBDSRC=1,SCI用內(nèi)部總線時(shí)鐘,反之,SCI用外部振蕩器時(shí)鐘。 2(2)CONFIG1 CONFIG1的地址是:$001F,定義為:嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件數(shù)據(jù)位 D7 D6 D5 D4 D3 D2 D1 D0定義COPRS LVISTOP LVIPWRD LVIRSTD LIV50R3 SSREC STOP COPD復(fù)位 0 0 0 0 0

3、 0 0 0D7COPRS位:COP速度選擇位。COPRS選擇COP溢出的范圍。 D6LVISTOP位:STOP模式下LVI允許位。 D5LVIRSTD位:LVI復(fù)位禁止位。D4LVIPWRD位:為L(zhǎng)VI電源禁止位。 D3LVI5OR3位:LVI的5V或者3V操作模式選擇位。 D2SSREC位:快速STOP模式恢復(fù)選擇位。 D1STOP位:STOP指令允許位。STOP位決定是否允許STOP指令。 D0COPD位:COP禁止位。COPD位決定是否禁止COP模塊。返回312.2 時(shí)鐘發(fā)生模塊CGM與鎖相環(huán)PLL12.2.1 鎖相環(huán)PLL的基本概念 (1)鎖相技術(shù)與頻率合成技術(shù) 鎖相技術(shù):就是實(shí)現(xiàn)相

4、位自動(dòng)控制的一門科學(xué),利用它可以得到頻帶范圍寬、波道多、穩(wěn)定度高、精度高的頻率源。 頻率合成技術(shù):就是利用一個(gè)或幾個(gè)具有高穩(wěn)定度和高精度的頻率源(一般由晶體振蕩器產(chǎn)生),通過(guò)對(duì)它們進(jìn)行加減(混頻),乘(倍頻),除(分頻)運(yùn)算,產(chǎn)生大量的具有相同頻率穩(wěn)定度和頻率精度的頻率信號(hào)。鎖相環(huán)頻率合成技術(shù)在通訊、雷達(dá)、導(dǎo)航、宇航、遙控遙測(cè)、電子技術(shù)測(cè)量等領(lǐng)域都有廣泛的應(yīng)用。 為了得到穩(wěn)定度高、精度高的頻率源,通常采用頻率合成技術(shù)。頻率合成技術(shù)主要有兩種:直接頻率合成技術(shù)和間接頻率合成技術(shù)。嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件4 (1)鎖相技術(shù)與頻率合成技術(shù) 直接頻率合成技術(shù):是將一個(gè)或幾個(gè)晶體振蕩器產(chǎn)生的頻率信號(hào)通

5、過(guò)諧波發(fā)生器產(chǎn)生一系列頻率信號(hào),然后再對(duì)這些頻率信號(hào)進(jìn)行倍頻、分頻和混頻,最后得到大量的頻率信號(hào)。 其優(yōu)點(diǎn)是:頻率穩(wěn)定度高,頻率轉(zhuǎn)換時(shí)間短(可達(dá)微秒量級(jí)),能做到很小的頻率間隔。缺點(diǎn)是:系統(tǒng)中要用到大量的混頻器、濾波器等,從而導(dǎo)致體積大,成本高,安裝調(diào)試復(fù)雜,故只用于頻率精度要求很高的場(chǎng)合。 間接頻率合成技術(shù):是利用鎖相技術(shù)來(lái)產(chǎn)生大量的具有高穩(wěn)定度和高精度的頻率源。由于間接頻率合成器的關(guān)鍵部件是鎖相環(huán),故通常稱為鎖相環(huán)頻率合成器。由于鎖相環(huán)頻率合成器的主要部件都易于集成,一般只加一個(gè)分頻器和一個(gè)一階低通濾波器,故其具有體積小、重量輕、成本低、安裝和調(diào)試簡(jiǎn)單等優(yōu)點(diǎn)。鎖相環(huán)頻率合成器在性能上逐漸接

6、近直接頻率合成器,所以它在電子技術(shù)中得到了日益廣泛的應(yīng)用,并在應(yīng)用中得到迅速發(fā)展。 12.2.1 鎖相環(huán)PLL的基本概念嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件5(2)鎖相環(huán)頻率合成器的基本原理鎖相環(huán)頻率合成器的原理框圖基準(zhǔn)頻率源基準(zhǔn)頻率源鑒相器低通濾波器壓控振蕩器反饋分頻器fr ud uo fo ff 12.2.1 鎖相環(huán)PLL的基本概念嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件6鎖相環(huán)頻率合成器的各個(gè)部件基準(zhǔn)頻率源:基準(zhǔn)頻率源提供一個(gè)穩(wěn)定頻率源,其頻率為fr,一般用精度很高的石英晶體振蕩器產(chǎn)生,是鎖相環(huán)的輸入信號(hào)。簽相器:簽相器是一個(gè)誤差檢測(cè)元件。它將基準(zhǔn)頻率源的輸出信號(hào)fr的相位與壓控振蕩器輸出信號(hào)fo的相位相比較,

7、產(chǎn)生一個(gè)電壓輸出信號(hào)ud,其大小取決于兩個(gè)輸入信號(hào)的相位差。低通濾波器:低通濾波器的輸入信號(hào)是簽相器的輸出電壓信號(hào)ud,經(jīng)過(guò)低通濾波器后ud的高頻分量被濾除,輸出控制電壓uo去控制壓控振蕩器。壓控振蕩器(VCO):壓控振蕩器的輸出信號(hào)頻率fo與它的輸入控制電壓uo成一定比例,而分頻器將鎖相環(huán)的輸出信號(hào)fo反饋給簽相器,形成一個(gè)負(fù)反饋,從而使輸入信號(hào)和輸出信號(hào)之間的相位差保持恒定。反饋分頻器:分頻器為環(huán)路提供一種反饋機(jī)制,當(dāng)分頻系數(shù)N=1時(shí),鎖相環(huán)系統(tǒng)的輸出信號(hào)頻率fo等于輸入信號(hào)頻率fr:fo=fr 信號(hào)鎖定后有: fo=ff=fr 當(dāng)分頻器的分頻系數(shù)N1,有: fo=Nff 即ff = fo

8、/ N 環(huán)路鎖定后有: ff = fr fo=Nff = Nfr 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件7 (1)CGM內(nèi)部結(jié)構(gòu)框圖12.2.2 MC68HC908GP32的CGM結(jié)構(gòu)及外部連接嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件CGMVCLK時(shí)鐘選擇電路CGMOUTSIMCGMRCLK基準(zhǔn)分頻器壓控振蕩器VCO濾波器鑒相器反饋分頻器CGMRDVCGMVDVPLL電路晶體振蕩電路CGMXFCVDDAVSSAOSC1OSC2CGMXCLKSIM、TBM、ADC等8CGM內(nèi)部結(jié)構(gòu)晶體振蕩電路:晶體振蕩電路通過(guò)外接石英或陶瓷振蕩器產(chǎn)生穩(wěn)定不變的時(shí)鐘信號(hào)CGMXCLK,CGMXCLK直接輸出給系統(tǒng)集成模塊SIM和AD轉(zhuǎn)換器

9、。同時(shí)也輸出到時(shí)鐘選擇模塊。CGMXCLK經(jīng)過(guò)緩沖后輸出到鎖相環(huán)頻率合成器,作為PLL信號(hào)源,這一路信號(hào)稱為CGMRCLK。 鎖相環(huán)頻率合成器:PLL電路通過(guò)壓控振蕩器(VCO)產(chǎn)生CGMVCLK信號(hào),輸出到時(shí)鐘選擇電路。其頻率可通過(guò)軟件編程控制。圖中CGMXFC為接濾波電路的引腳。 時(shí)鐘選擇電路:時(shí)鐘發(fā)生模塊的輸出信號(hào)CGMOUT有兩種來(lái)源:直接采用晶振電路產(chǎn)生的CGMXCLK信號(hào)二分頻,也可以采用壓控振蕩器(VCO)產(chǎn)生CGMVCLK信號(hào)二分頻,時(shí)鐘選擇電路可以通過(guò)軟件編程決定采用那種信號(hào)來(lái)源。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件9(2)CGM的I/O信號(hào)I/O信號(hào) 符號(hào)名稱基本含義外部硬件引腳信

10、號(hào)VDDAVSSA PLL電源、地 分別與系統(tǒng)的電源和地相接,在布線時(shí)VDDA應(yīng)該加濾波電容,同時(shí)盡量靠近芯片。 OSC1 晶振輸入引腳 OSC1將引腳的輸入信號(hào)連至內(nèi)部晶振電路的反向放大器。OSC2 晶振輸出引腳 OSC2引腳輸出經(jīng)過(guò)反向的輸入信號(hào)。若采用外接信號(hào)源作為時(shí)鐘輸入,OSC2引腳可以懸空,也可以連接到其他MCU的OSC1輸入引腳。 CGMXFC 外部濾波電容引腳 CGMXFC為PLL電路環(huán)路濾波器所必需的,連接一個(gè)外接濾波網(wǎng)絡(luò)。為了減小干擾,提高系統(tǒng)電磁兼容性,在元件布局上,濾波網(wǎng)絡(luò)應(yīng)該盡量靠近MCU,用最短的連線連接,同時(shí)遠(yuǎn)離其他布線。來(lái)自SIMSIMOSCEN 振蕩器允許 來(lái)

11、自系統(tǒng)集成模塊SIM,允許PLL和晶振電路 來(lái)自CONFIG2OSCSTOPENB 振蕩器停止模式允許位 OSCSTOPENB是CONFIG寄存器中和晶振相關(guān)的控制位。若置位,則晶振電路在STOP模式下可繼續(xù)工作;若復(fù)位(缺省情況),則晶振電路的行為受SIMOSCEN標(biāo)志位控制,在STOP模式下將關(guān)閉晶振電路。 輸出CGMXCLK(給SIM、TIM、ADC) 晶體頻率輸出信號(hào) CGMXCLK是晶振電路的輸出信號(hào),頻率等于石英晶體的頻率。信號(hào)的精度和質(zhì)量取決于外接晶體和外界因素,當(dāng)然,在系統(tǒng)啟動(dòng)階段,CGMXCLK是不穩(wěn)定的 輸出CGMOUT(給SIM) CGM的輸出 CGMOUT是時(shí)鐘發(fā)生模塊

12、的輸出信號(hào),信號(hào)送入SIM模塊,SIM模塊產(chǎn)生MCU的時(shí)鐘信號(hào)。CGMOUT占空比為50%,經(jīng)過(guò)2分頻后產(chǎn)生總線時(shí)鐘,CGMOUT的來(lái)源可編程選定為晶振電路輸出CGMXCLK的二分頻或VCO電路的輸出CGMVCLK二分頻嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件10(3)CGM的外部連接0.1+5V0.470.0110KPLL濾波MC68HC908GP32引腳 1 2 3 4 5含義 VDDA VSSA CGMXCLK OSC2 OSC1C1C2RS晶振電路RBX1在典型應(yīng)用情況下,CGM模塊需要9個(gè)外接器件,其中晶振電路中需要5個(gè),PLL電路需要2到4個(gè)。如右圖所示。有了這些連接,從硬件角度看,MCU就可以

13、正常工作了。 晶振電路采用的元件有:晶體X1,電容C1,C2,反饋電阻RB,串行電阻RS。串行電阻RS,C1,C2的取值可參考晶振廠家給出的典型值,電容一般取10-36p,C1與C2值應(yīng)該略有差異,以利于晶振電路起振。典型情況下,RS取330K,RB為10M。晶振采用32.768KHZ。 PLL電路采用的元件有:跨接電容,用于穩(wěn)定鎖相環(huán)電源引腳,一般取0.1uF左右。濾波網(wǎng)絡(luò),為芯片內(nèi)部的鎖相環(huán)電路提供誤差電平,元件參數(shù)可參考上圖。 注:如用戶不打算在應(yīng)用中使用鎖相環(huán)電路部分,這一部分電路可以不接,讓CGMXFC引腳懸空。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件1112.2.3 CGM的編程基礎(chǔ)(1)PL

14、L控制寄存器(PLL Control RegisterPCTL) PCTL的地址:$0036,定義為:數(shù)據(jù)位 D7 D6 D5 D4 D3 D2 D1 D0定義PLLIE PLLF PLLON BCS PRE1 PRE0 VPR1 VPR0復(fù)位 0 0 0 0 0 0 0 0 D7 PLLIE位:PLL中斷使能位(PLL Interrupt Enabled Bit)。該位可讀寫(xiě),決定當(dāng)PLL帶寬控制寄存器的LOCK標(biāo)志位反轉(zhuǎn)時(shí)是否產(chǎn)生CPU中斷。 D6 PLLF 位:PLL中斷標(biāo)志位(PLL Interrupt Flag Bit)。該位只讀。當(dāng)LOCK標(biāo)志位反轉(zhuǎn)時(shí)被置位。 D5 PLLON位

15、:PLL開(kāi)關(guān)檢測(cè)位(PLL On Bit)。該位為可讀寫(xiě),用于啟動(dòng)PLL電路并激活VCO時(shí)鐘CGMVCLK,當(dāng)VCO正作為基準(zhǔn)時(shí)鐘源時(shí),PLLON不能被清零(BCS=1),要關(guān)閉PLL應(yīng)該先不選PLL為時(shí)鐘源(BCS=0),再清除PLLON位。MCU上電復(fù)位后此位置1。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件12嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件D4 BCS 位:CGM基時(shí)鐘選擇位(Base Clock Select Bit)。該位為可讀寫(xiě),用于決定CGM模塊的輸出信號(hào)CGMOUT的輸入信號(hào)源。BCS=1,選擇PLL電路為時(shí)鐘源,CGMVCLK二分頻后驅(qū)動(dòng)CGMOUT;BCS=0,選擇晶振為時(shí)鐘源,CGMXCLK

16、二分頻后驅(qū)動(dòng)CGMOUT。 D3D2 PRE1PRE0:預(yù)分頻位(Prescaler Program Bits)。這兩位為可讀寫(xiě)。設(shè)置預(yù)分頻器的分頻因子P ,預(yù)分頻器的分頻因子P(由此得到預(yù)分頻系數(shù)NP=2P)與PRE1、PRE0關(guān)系如下:PRE1、PRE0 = 00 P=0 NP=1 (20) = 01 P=1 NP=2 (21) = 10 P=2 NP=4 (22) = 11 P=3 NP=8 (23) D1D0 VPR1VPR0:VCO的E選擇位(VCO Power-of-Two Range Select Bits)。這兩位為可讀寫(xiě)。設(shè)置VCO模塊的參數(shù)E,控制參考頻率。E與VPR1、V

17、PR0關(guān)系如下: VPR1、VPR0 = 00 E=1 (20) = 01 E=2 (21) = 10 E=4 (22) = 11 E=8 (23) (不使用) (1)PLL控制寄存器(PLL Control RegisterPCTL)13 (2)PLL帶寬控制寄存器(PLL Bandwidth Control RegisterPBWC) PCTL的地址:$0036,定義為:12.2.3 CGM的編程基礎(chǔ)數(shù)據(jù)位 D7 D6 D5 D4 D3 D2 D1 D0定義AUTO LOCK ACQ# 保留復(fù)位 0 0 0 0 0 0 0 0D7 AUTO位:自動(dòng)帶寬控制位(Automatic Bandw

18、idth Control Bit)。該位可讀寫(xiě),用于選擇自動(dòng)或手動(dòng)帶寬模式。AUTO=1,自動(dòng)方式;AUTO=0,手動(dòng)方式。 D6 LOCK位:Lock指示位(Lock Indicator Bit)。當(dāng)AUTO位為1時(shí)(設(shè)為自動(dòng)方式),LOCK為只讀位,且當(dāng)VCO的時(shí)鐘CGMVCLK完成鎖定(工作在程序設(shè)定頻率)后置1,表示時(shí)鐘穩(wěn)定。當(dāng)AUTO位為0時(shí)(設(shè)為手動(dòng)方式),LOCK始終讀出為0,無(wú)意義。 D5 ACQ#位:獲取模式位(Acquisition Mode Bit)。=1,跟蹤模式; =0,獲取模式。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件1412.2.3 CGM的編程基礎(chǔ)(3)PLL倍頻選擇寄存器

19、(PLL Multiplier Control RegisterPMSH、PMSL) PMSH、PMSL的地址分別為:$0038、$0039,設(shè)置分頻模塊的分頻系數(shù)。PMSH的高4位沒(méi)有定義,始終為0。PMSH的低4位與PMSL一起組成12位的分頻因子,記為MUL11MUL0,它們決定了VCO電路的反饋模塊的分頻因子N的高4位。由于分頻因子N不能為0,即使設(shè)置為0,系統(tǒng)也會(huì)默認(rèn)為1。復(fù)位時(shí)N=64(即:PMSH:PMSL=$0040)。注意:倍頻因子寄存器有內(nèi)部的保護(hù)機(jī)制,當(dāng)PLLON=1時(shí),PMSH:PMSL不能被寫(xiě)入。即對(duì)PMSH:PMSL的寫(xiě)入操作應(yīng)當(dāng)在PLL電路關(guān)閉的情況下,PLL電路

20、工作后不能改變PMSH:PMSL的值。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件1512.2.3 CGM的編程基礎(chǔ)(4)PLL VCO范圍選擇寄存器(PLL VCO Range Select RegisterPVRS) PVRS的地址是:$003A,功能是對(duì)VCO電路進(jìn)行設(shè)置。其8位分別記為:VRS7VRS0。這8位均為可讀可寫(xiě)位,確定VCO輸出頻率范圍系數(shù)L,對(duì)PVRS的寫(xiě)操作只能在PLL關(guān)閉時(shí)進(jìn)行,當(dāng)打開(kāi)PLL (PCTL中的PLLON=1)時(shí)PVRS不能被寫(xiě)。在PVRS中寫(xiě)入$00將禁止PLL電路并清除PLL控制寄存器PCTL中BCS位。復(fù)位時(shí)L=64(即:PVRS=$40)。同樣要注意,VCO范圍選

21、擇寄存器有內(nèi)部保護(hù)機(jī)制,當(dāng)PLL電路打開(kāi)(PLLON=1)時(shí),寄存器為寫(xiě)保護(hù)。PLL VCO范圍選擇寄存器必須正確初始化,否則PLL電路不能正確完成鎖相。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件1612.2.3 CGM的編程基礎(chǔ)(5)PLL 參考分頻因子寄存器(PLL Reference DividerSelect RegisterPRDS) PRDS的地址是:$003B,功能是設(shè)置參考分頻因子R。PRDS的高4位未定義,低4位為參考分頻因子R。該寄存器最低位缺省為1。嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件17(1)PLL參數(shù)計(jì)算 選擇希望的總線頻率 fBUSDES 計(jì)算希望得到的壓控振蕩器VCO頻率(是總線頻率的4

22、倍):fVCLKDES=4fBUSDES 選擇PLL參考時(shí)鐘頻率fRCLK及參考時(shí)鐘的分頻因子R。 計(jì)算壓控振蕩器VCO分頻因子:N=(R fVCLKDES)/fRCLK,四舍五入取整。 求預(yù)分頻器分頻因子P。 計(jì)算檢驗(yàn)壓控振蕩器VCO的輸出頻率:fVCLK=(2PN/R)/fRCLK,fBUS= fVCLK/4。12.2.4 PLL參數(shù)計(jì)算與編程步驟嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件18 選擇壓控振蕩器VCO的E:若fVCLK9.8304106,E=0。若9.8304106fVCLK19.6608106,E=1。若19.6608106fVCLK39.3216106,E=2。 選擇壓控振蕩器VCO的L

23、:L=fVCLK/(2EfNOM),四舍五入取整,其中fNOM=38400H 計(jì)算檢驗(yàn)壓控振蕩器VCO的中心頻率fVRS。中心頻率是PLL模塊能夠達(dá)到的最大與最小頻率的中點(diǎn):fVRS=(L2E)fNOM,|fVRS- fVCLK |(fNOM2E)/2 通過(guò)比較fVCLK、fVRS、fVCLKDES驗(yàn)證P、R、N、E和L。fVCLK必須處于fVCLKDES的噪聲容限內(nèi),且fVRS必須盡量接近fVCLK。超過(guò)推薦的最大總線頻率或VCO頻率,可能損壞MCU。 (1)PLL參數(shù)計(jì)算嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件19 禁止PLL:清零PLL控制寄存器PCTL 將P、E寫(xiě)入PCTL 將N寫(xiě)入PMSH、PMS

24、L 將L寫(xiě)入PVRS 將R寫(xiě)入PRDS 置PCTL.PLLON=1,啟動(dòng)PLL電路并激活VCO時(shí)鐘CGMVCLK 置PBWC. AUTO=1 (即:自動(dòng)帶寬控制位),自動(dòng)方式 置PCTL.BCS=1,選擇PLL為時(shí)鐘源,CGMOUT=CGMVCLK/2 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件(2)編程步驟20(1)匯編語(yǔ)言 ;PLL編程 CLR PCTL ;禁止PLL:清零PLL控制寄存器PCTL MOV #$01,PCTL ;將P、E寫(xiě)入PCTL MOV #$01,PMSH ;將N寫(xiě)入PMSH、PMSL MOV #$2C,PMSL MOV #$80,PMRS ;將L寫(xiě)入PMRS MOV #$01,PRD

25、S ;將R寫(xiě)入PRDS BSET 5,PCTL ;置PCTL.PLLON=1,啟動(dòng)PLL電路 BSET 7,PBWC ;PBWC自動(dòng)帶寬控制位=1 BSET 4,PCTL ;PCTL.BCS=1 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件12.2.5 初始化及PLL編程實(shí)例21(2)08C語(yǔ)言 PCTL=0 x00; /禁止PLL:清零PLL控制寄存器PCTL PCTL=0 x01; /將P、E寫(xiě)入PCTL,置VCO的參考頻率為2 PMSH=0 x01; /將N寫(xiě)入PMSH、PMSL,置VCO的倍頻因子為$12C PMSL=0 x2C; PMRS=0b10000000; /將L寫(xiě)入PMRS,置VCO的輸出頻率

26、范圍系 / 數(shù)為$80 RDS=0 x01; /將R寫(xiě)入PRDS PCTL|=15; /置PCTL.PLLON=1,啟動(dòng)PLL電路 PBWC|=17; /PBWC自動(dòng)帶寬控制位=1,選擇自動(dòng)控制方式 PCTL|=14; /PCTL.BCS=1,選擇PLL電路為時(shí)鐘源 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件12.2.5 初始化及PLL編程實(shí)例返回2212.3 中斷12.3.1 中斷源與中斷向量地址 (1)GP32單片機(jī)的中斷源 GP32單片機(jī)有25個(gè)中斷源,按優(yōu)先級(jí)從高到低的順序分別是:復(fù)位中斷(1個(gè))、SWI指令中斷(1個(gè))、引腳中斷(1個(gè))、CGM中斷(1個(gè))、定時(shí)器1中斷(3個(gè))、定時(shí)器2中斷(3個(gè))

27、、SPI中斷(4個(gè))、SCI中斷(8個(gè))、鍵盤輸入中斷(1個(gè))、ADC轉(zhuǎn)換完成中斷(1個(gè))和時(shí)基中斷(1個(gè))。這里把復(fù)位也列為一個(gè)特殊的中斷,因?yàn)樗簿哂邢蛄康刂?,后面?duì)復(fù)位將有較詳細(xì)的表述。 25個(gè)中斷源只有18個(gè)中斷向量,有的是幾個(gè)中斷源使用同一個(gè)中斷向量,表12-3給出了 MC68HC908GP32中斷源及中斷向量地址。 GP32內(nèi)部使用3個(gè)中斷狀態(tài)寄存器:INT1(地址為$FE04)、INT2(地址為$FE05)和INT3(地址為$FE06)來(lái)保存中斷狀態(tài),但一般編程時(shí)并不使用這些寄存器,因此此處不做介紹。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件23(2)中斷的過(guò)程 CPU內(nèi)的寄存器PCL、PCH

28、、X、A、CCR依次進(jìn)棧(注意H未被保護(hù),這是為了與HC05系列MCU兼容,所以必要時(shí),H應(yīng)由用戶中斷服務(wù)程序保護(hù)); 自動(dòng)關(guān)總中斷(即相當(dāng)于自動(dòng)執(zhí)行SEI指令),防止其他中斷進(jìn)入; 從相應(yīng)的中斷向量地址取出中斷向量(即中斷服務(wù)程序的入口地址)送給PC; 執(zhí)行中斷服務(wù)程序,直到執(zhí)行中斷返回指令RTI。RTI指令從堆棧中依次彈出CCR、A、X、PCH、PCL,使CPU返回原來(lái)中斷處繼續(xù)執(zhí)行; 若中斷過(guò)程也允許響應(yīng)新的中斷,可在中斷服務(wù)程序中用CLI指令開(kāi)放中斷。一般不建議這樣做,可用其他編程技巧處理相關(guān)問(wèn)題。 12.3.1 中斷源與中斷向量地址嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件2412.3.2 IRQ引

29、腳中斷 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件 IRQ狀態(tài)寄存器INTSCR(IRQ Status and Control Register)的地址是:$0013,定義為:數(shù)據(jù)位 D7 D6 D5 D4 D3 D2 D1 D0定義 IROF ACK IMASK MODE復(fù)位 0 0 0 0 0 0 0 0 D7D4位:未定義。 D3 IRQF位:IRQ中斷標(biāo)志位。IRQF=1,已發(fā)生IRQ中斷,反之未發(fā)生IRQ中斷。該位只讀。 D2 ACK位:IRQ中斷請(qǐng)求應(yīng)答位。該位只寫(xiě),讀出總是0。 D1 IMASK位:IRQ中斷屏蔽位。 IMASK=1,禁止IRQ中斷; IMASK=0,允許IRQ中斷。 D0 MO

30、DE位:IRQ邊沿/低電平觸發(fā)模式選擇位。MODE=1,IRQ#引腳負(fù)跳變及低電平中斷,MODE=0,IRQ#引腳僅負(fù)跳變中斷。 25 斷點(diǎn)模塊(break module,BRK)可以在設(shè)定的地址處產(chǎn)生一個(gè)中斷,該中斷稱為斷點(diǎn)中斷(Break interrupt),它使CPU中止當(dāng)前程序的執(zhí)行而進(jìn)入斷點(diǎn)中斷服務(wù)程序。 斷點(diǎn)中斷可由下述2種方式引起: 程序計(jì)數(shù)器PC值與斷點(diǎn)地址寄存器的內(nèi)容相匹配時(shí)產(chǎn)生斷點(diǎn)中斷。 用軟件向斷點(diǎn)狀態(tài)與控制寄存器BRKSCR的BRKA位寫(xiě)1時(shí)產(chǎn)生斷點(diǎn)中斷。 當(dāng)斷點(diǎn)中斷發(fā)生后,CPU在結(jié)束當(dāng)前指令后,將一條SWI指令裝入內(nèi)部指令寄存器作為下一條指令執(zhí)行。這樣就如同發(fā)生一

31、個(gè)軟件中斷,斷點(diǎn)中斷向量地址是$FFFC和$FFFD,與軟件中斷SWI指令產(chǎn)生的中斷是同一個(gè)中斷向量地址。實(shí)際上,即使是調(diào)試工具的開(kāi)發(fā)也極少單獨(dú)使用SWI指令,而是設(shè)置斷點(diǎn)中斷產(chǎn)生SWI中斷,在中斷例程中,將當(dāng)前MCU工作狀態(tài)發(fā)送給PC機(jī)。 從編程角度,斷點(diǎn)模塊BRK涉及斷點(diǎn)狀態(tài)控制寄存器BRKSCR(Break Status and Control Register)與16位斷點(diǎn)地址寄存器(BRKH、BRKL)。 12.3.3 斷點(diǎn)模塊BRK與軟件中斷SWI 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件返回2612.4 復(fù)位與系統(tǒng)集成模塊嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件12.4.1 復(fù)位 復(fù)位使MCU進(jìn)入到開(kāi)始狀態(tài)

32、,從復(fù)位向量地址($FFFE$FFFF)取得即將開(kāi)始執(zhí)行程序的地址,由此地址開(kāi)始執(zhí)行。(1)從是否上電來(lái)看,分為上電復(fù)位與熱復(fù)位: 上電復(fù)位是指原來(lái)芯片并未加電(處于所謂冷狀態(tài)),給芯片加電后,芯片復(fù)位。 熱復(fù)位是指芯片本來(lái)就處于上電狀態(tài),由于內(nèi)部或外部原因引起的復(fù)位,復(fù)位后,MCU迅速停止當(dāng)前正在執(zhí)行的指令,有關(guān)寄存器恢復(fù)到復(fù)位狀態(tài)值,從地址$FFFE$FFFF取出兩字節(jié)的復(fù)位向量送到程序計(jì)數(shù)器PC。 (2)從引起復(fù)位的信號(hào)來(lái)看,有外部復(fù)位與內(nèi)部復(fù)位: 外部復(fù)位是指邏輯低電平加到芯片的引腳一段時(shí)間后所產(chǎn)生的復(fù)位。IRQ#引腳也是內(nèi)部復(fù)位的輸出端。 內(nèi)部復(fù)位是指芯片的內(nèi)部復(fù)位源將芯片的引腳拉低

33、32個(gè)CGMXCLK周期所產(chǎn)生的復(fù)位。 27(1)SIM模塊的主要功能 1)SIM模塊的主要功能有: 總線時(shí)鐘的產(chǎn)生和控制,包括STOP、等待、復(fù)位、斷點(diǎn)的進(jìn)入和恢復(fù),內(nèi)部時(shí)鐘控制; 用戶復(fù)位控制,包括上電復(fù)位和COP溢出; 中斷控制,包括識(shí)別時(shí)序、仲裁控制時(shí)序、中斷地址產(chǎn)生; CPU允許和禁止時(shí)序; 可擴(kuò)展到128個(gè)中斷源的模塊結(jié)構(gòu)。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課件12.4.2 系統(tǒng)集成模塊SIM28 時(shí)鐘生成器產(chǎn)生一個(gè)時(shí)鐘信號(hào)輸出到SIM來(lái)產(chǎn)生系統(tǒng)時(shí)鐘,這個(gè)時(shí)鐘信號(hào)可以來(lái)自外部振蕩器,也可以來(lái)自內(nèi)部鎖相環(huán)電路,可分3種情況: 在用戶模式下,內(nèi)部總線的頻率可以是晶體振蕩器的輸出(CGMXCLK)或鎖相環(huán)電路輸出(CGMVCLK)的4分頻; 當(dāng)上電復(fù)位模塊或者低電壓禁止模塊產(chǎn)生復(fù)位信號(hào)時(shí),CPU內(nèi)部時(shí)鐘保持復(fù)位狀態(tài)直到經(jīng)過(guò)4096個(gè)CGMCLK時(shí)鐘。在這期間,引腳被SIM設(shè)置為低。內(nèi)部總線也在4096個(gè)CGMCLK時(shí)鐘之后開(kāi)始工作; 在WAIT模式下,CPU時(shí)鐘并不工作,SIM為其他模塊提供時(shí)鐘。 嵌入式應(yīng)用技術(shù)基礎(chǔ)教程課

溫馨提示

  • 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)論