復(fù)位及時鐘—復(fù)位
上電復(fù)位
單片機(jī)自動檢測VDD端的正跳變,啟動自動工作。
外部復(fù)位
通過RESET引腳加一低電壓,拉低超過一定時間
后可實現(xiàn)復(fù)位。
看門狗復(fù)位
幫助系統(tǒng)在軟件跑飛后自動復(fù)位。
時鐘監(jiān)視器復(fù)位
利用內(nèi)部的RC電路來保證時鐘頻率滿足要求。
振蕩器和時鐘電路
EXTAL是外部時鐘輸入或石英振蕩放大器的輸入
XTAL是石英振蕩放大器的輸出
注:DG128可用串聯(lián)振蕩電路和并聯(lián)振蕩電路兩種連接方式。
9S12X系列單片機(jī)只可用并聯(lián)振蕩電路。
?
時鐘初始化寄存器-共5個
?
?。?)鎖相環(huán)控制寄存器(PLLCTL)
(2)時鐘合成寄存器(SYNR)-低6位有效,有效值0~63。
?。?)時鐘分頻寄存器(REFDV)-低4位有效,有效值0~15。
由鎖相環(huán)來產(chǎn)生時鐘頻率的公式:
例如:選用16MHz的外部晶振,若將SYNR設(shè)為
2,REFDV設(shè)為1,通過公式計算可得
PLLCLK=48MHz。從而得到系統(tǒng)的總線頻
率為24MHz。
PLL例子
CLKSEL=0x00; //禁止PLL
PLLCTL=0xe1; //PLL電路允許
SYNR=2;REFDV=1; //設(shè)置倍頻參數(shù)
PLLCTL=0x60; //時鐘監(jiān)控禁止
while(0==(CRGFLG&0x08));//等待穩(wěn)定
CLKSEL=0x80; //選擇PLL作為時鐘
//若晶振為16M,則PLLCLK=2*16*3/2=48MHz,則總線頻率是24MHz
RTI程序舉例
RTICTL = 0x7e;//4M/15*2^16 = 4Hz
CRGINT = 0x80;
// 中斷使能
得到大約每秒4次的中斷
評論
查看更多