主程序是:流水灯0到7依次点亮、流水灯7到0依次点亮,反复循环。
外部中断程序是:灯全亮、全灭3次。
但是,程序没有开中断的指令,中断程序是不会执行的。
START: ;在下面添加:
SETB EA ;开总中断.
SETB EX0 ;开INT0中断.
CLR IT0 ; 设置INT0为电平触发.
MOV A,#00H
……
外部中断就可以实现了。
程序不完整,51复位后默认是关闭中断的,不打开中断则不会进入中断服务程序
不要太相信书上是知识,我在很多是书上都看见过错误。
SETB EA ;开总中断
SETB EX0 ;开INT0中断
是必须有的,没有不能中断。
你在去看看书上,EA这位是在那个寄存器里面的,别忘了单片机的寻址方式,有的时候有些位的默认状态,和寄存器的默认状态,这些都很重要。
LJMP INT_0
INT—0 里面应该就有你要的东西 一般是初始化程序