中断的响应
;知识要点:中断的应用;1khz就是每500us取反一次
;t1为方式0则m1m0=00h,使用定时器c/t=0 gate=0
;方式0为13位定时器,总时间为2的13次方微秒.=8192微秒,减去500微秒=7692
;1111000001100换算为16进制高8位等于0fh低8位 0ch
;注意:这两个字段不是连续的低8位01100前面加0补足后再算
;初学请多多练习掌握计算方法, 有条件用示波器看频率
;中断响应的基本条件是中断有请求,中断允许寄存器相应位置1,总中断开放ea=1
;一旦响应中断, 只保护断点不保护现场,所以一般要保护现场.
ORG 0000H;
LJMP MAIN;
ORG 001BH;跳转到中断入口
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;中断返回
评论