我用的是MC908JL8芯片,用的仿真器是freescale免费提供的那种,我的主循环程序开头一部分如下:
MAINLOOP: STA COPCTL ;CLEAR WATHCH DOG BRCLR F_Switch_Flag,FLAG,STEP_CONTINUE ;新键值检测完毕? BCLR F_Switch_Flag,FLAG LDA Switch_Key ;读取最新键值 CBEQ SWITCH_RESULT,STEP_CONTINUE ;检测状态是否已经改变 MOV SWITCH_RESULT,Last_Key STA SWITCH_RESULT ;一步未完继续 BCLR F_First_Run,FLAG_2 JSR PROC_LOAD_STEP ;加载相应步进的参数
STEP_CONTINUE: JSR PROC_AGITATION_CONTROL
JSR PROC_INFALL_WATER
JSR PROC_HEAT_CONTROL
JSR PROC_SPIN_TEST BRA MAINLOOP NOP NOP BRA MAINLOOP
我直接run的时候cammand界面出现以下提示:
Waiting for keystroke or breakpoint ... STARTED RUNNING
我的中断进入是使用IRQ过零点检测.
单步走的时候就是一直在MAINLOOP中跑.当我run to cursor 到我以红色表示的哪个地方时cammand界面也出现以下提示:
Waiting for keystroke or breakpoint ... STARTED RUNNING
各位大侠,这是不是我的程序进不了中断啊!但是我用示波器检测出IRQ脚的波形很正常的啊!请各位指点一下啊!我刚开始学做东西,唉!一菜鸟啊! |