中斷的響應
;知識要點:中斷的應用;1khz就是每500us取反一次
;t1為方式0則m1m0=00h,使用定時器c/t=0 gate=0
;方式0為13位定時器,總時間為2的13次方微秒.=8192微秒,減去500微秒=7692
;1111000001100換算為16進制高8位等于0fh低8位 0ch
;注意:這兩個字段不是連續(xù)的低8位01100前面加0補足后再算
;初學請多多練習掌握計算方法, 有條件用示波器看頻率
;中斷響應的基本條件是中斷有請求,中斷允許寄存器相應位置1,總中斷開放ea=1
;一旦響應中斷, 只保護斷點不保護現(xiàn)場,所以一般要保護現(xiàn)場.
ORG 0000H;
LJMP MAIN;
ORG 001BH;跳轉(zhuǎn)到中斷入口
LJMP INSER;到中斷服務程序
ORG 030H;
MAIN: MOV TMOD,#00H;ti工作方式0
MOV TH1,#0F0H;載入初值
MOV TL1,#0CH;
SETB EA;開中斷
SETB ET1;定時器t1允許
LOOP: SETB TR1;起動定時器
HERE: SJMP HERE;等待中斷, 虛擬主程序,實際這里可以插入其他程序
ORG 0200H;中斷服務程序從200h開始
INSER: MOV TH1,#0F0H;重新裝入定時初值
MOV TL1,#0CH;
CPL P3.3;取反小喇叭
RETI;中斷返回
評論