HT47R20
Rev. 1.10
11
2002-07-25
內(nèi)部定時(shí)
/
計(jì)數(shù)器中斷是由置位定時(shí)
/
計(jì)數(shù)器中斷申請(qǐng)標(biāo)志
(TF
該中斷申請(qǐng)標(biāo)志是由定時(shí)器
A
或定時(shí)器
B
溢出產(chǎn)生的
已置位的話 會(huì)調(diào)用地址
10H
子程序 此時(shí)不僅其相關(guān)的中斷申請(qǐng)標(biāo)志
(TF)
會(huì)被清除 而且
EMI
位也會(huì)被
清除
以禁止其他中斷
時(shí)基中斷是由置位時(shí)基中斷申請(qǐng)標(biāo)志位
(TBF)
的方式來(lái)啟動(dòng)的
的
如果中斷允許
而此時(shí)堆棧尚未用滿
而且
TBF
也已置位的話
其相關(guān)的中斷申請(qǐng)標(biāo)志
(TBF)
會(huì)被清除
而且
EMI
位也會(huì)被清除
實(shí)時(shí)時(shí)鐘中斷是由置位實(shí)時(shí)時(shí)鐘中斷申請(qǐng)標(biāo)志位
(RTF
申請(qǐng)標(biāo)志是由實(shí)時(shí)時(shí)鐘產(chǎn)生的
如果中斷允許
而此時(shí)堆棧尚未用滿
址
0CH
子程序
此時(shí)不僅其相關(guān)的中斷申請(qǐng)標(biāo)志
(RTF)
會(huì)被清除
進(jìn)一步的中斷
執(zhí)行中斷子程序期間
其他的中斷響應(yīng)會(huì)被暫停
制位設(shè)為
1
(
此時(shí)堆棧尚未用滿
)
為止
若欲從此中斷子程序返回
中
RETI
會(huì)設(shè)定
EMI
位
用以允許中斷服務(wù)
而
RET
則否
如果在兩個(gè)連續(xù)的
T2
脈沖上升沿之間發(fā)生中斷
如果同時(shí)發(fā)生中斷申請(qǐng)
其順序會(huì)依照下表所顯示
這個(gè)順序可以通過(guò)設(shè)定各中斷相關(guān)的控制位來(lái)改變順
序
No.
中斷源
a
外部中斷
b
時(shí)基中斷
c
實(shí)時(shí)時(shí)鐘中斷
d
定時(shí)
/
計(jì)數(shù)器中斷
中斷控制寄存器
0(INTC0)
是由外部中斷申請(qǐng)標(biāo)志位
(EIF)
申請(qǐng)標(biāo)志位
(TBF)
外部中斷允許位
(EEI)
實(shí)時(shí)時(shí)鐘中斷允許位
(ERTI)
許位
(EMI)
組成的 其地址為數(shù)據(jù)存儲(chǔ)器
(ROM)
的
0BH
中斷控制寄存器
1(INTC1)
是由定時(shí)
/
計(jì)數(shù)器中斷申
請(qǐng)標(biāo)志位
(TF)
定時(shí)
/
計(jì)數(shù)器中斷允許位
(ETI)
組成的 其地址為數(shù)據(jù)存儲(chǔ)器的
1EH EMI EEI ETI ETBI
和
ERTI
是用來(lái)控制中斷的允許
/
禁止?fàn)顟B(tài)
這些控制位可以防止正在進(jìn)行中斷服務(wù)時(shí)的中斷申請(qǐng)
斷申請(qǐng)標(biāo)志
(RTF
TBF
TF
EIF)
置位之后
仍會(huì)繼續(xù)保留在
INTC0
或
INTC1
寄存器中
都被服務(wù)或用軟件指令清除為止
建議不要在中斷服務(wù)程序中使用
CALL
指令來(lái)調(diào)用子程序
立刻給予響應(yīng)
如果只剩下一層堆棧
而中斷不能被很好地控制
序中執(zhí)行
CALL
指令而使堆棧溢出
從而發(fā)生混亂
振蕩電路
HT47R20
向系統(tǒng)時(shí)鐘提供
3
種振蕩器電路 根據(jù)掩膜選擇分別為
RC
振蕩器 晶體振蕩器和
32768Hz
的振蕩器
無(wú)論選擇何種振蕩源
其信號(hào)都提供系統(tǒng)時(shí)鐘
并忽略外部信號(hào)以節(jié)省電源 如果選擇
32768Hz
的振蕩器作為系統(tǒng)振蕩器 那么在
HALT
模式下就不會(huì)停
止系統(tǒng)振蕩器
但是停止執(zhí)行指令由于這個(gè)振蕩器
(
用于系統(tǒng)振蕩器或
RCT
振蕩器
)
也用于提供定時(shí)作用
因此在
HALT
模式下內(nèi)部的定時(shí)操作
(RTC
時(shí)基
WDT)
仍然運(yùn)行
INTC1
的第
4
位
)
的方式來(lái)啟動(dòng)的
如果中斷允許
而此時(shí)堆棧尚未用滿
而
而且
TF
也
而該中斷申請(qǐng)標(biāo)志是由時(shí)基信號(hào)產(chǎn)生
會(huì)調(diào)用地址
08H
子程序
用以禁止任何進(jìn)一步的中斷
INTC0
的第
6
位
)
的方式來(lái)啟動(dòng)的
而且
RTF
也已置位的話
而且
EMI
位也會(huì)被清除
此時(shí)不僅
而該中斷
會(huì)調(diào)用地
用以禁止任何
直到執(zhí)行
RETI
指令或是將
EMI
位和其相關(guān)中斷控
只要執(zhí)行
RET
或
RETI
指令即可
則在這兩個(gè)
T2
后面的
T2
脈沖該中斷會(huì)被服務(wù)
其
而
優(yōu)先級(jí)
1
2
3
4
中斷向量
04H
08H
0CH
10H
實(shí)時(shí)時(shí)鐘中斷申請(qǐng)標(biāo)志位
(RTF)
時(shí)基允許位
(ETBI)
以及總中斷允
時(shí)基中斷
一旦中
直到全部中斷
因?yàn)橹袛嚯S時(shí)都可能發(fā)生
原先的控制序列很可能因?yàn)樵谥袛嘧映?/div>
而且需要
HALT
模式停止系統(tǒng)振蕩器
(RC
和晶體振蕩器
)
%
+ )
+ +
B ) (
-
)
) #
)
!
(
-
0
3 : 6 8 @ )
%
+
)
+ +
0
!
系統(tǒng)振蕩
在這
3
種振蕩器中
值范圍為
24 k
到
1M
RC
振蕩器提供了最廉價(jià)的解決方案
因此
它不適合需要精確的振蕩器頻率的記時(shí)操作的場(chǎng)合
如果使用了
RC
振蕩器則要在
OSC1
和
VDD
之間接一個(gè)外接的電阻
從
OSC2
輸出系統(tǒng)時(shí)鐘
4
分頻的信號(hào)
然而振蕩器的頻率會(huì)隨著
VDD
電阻的阻
用于給外部邏輯器件提供同步時(shí)鐘信號(hào)
溫度和芯片自身的參數(shù)發(fā)生變化