📄 fiq.asm.bak
字号:
.PUBLIC _FIQ
.EXTERNAL _BSR_FIQ_Routine
.EXTERNAL __gIsStopRecog //变量值=0,语音识别器忙
//变量值=1,语音识别器停止
//变量值=2,语音识别器暂停
.PUBLIC _BREAK,_IRQ0, _IRQ1, _IRQ2, _IRQ3, _IRQ4, _IRQ5, _IRQ6, _IRQ7
.INCLUDE A2000.inc;
.INCLUDE resource.inc
.INCLUDE hardware.inc
.TEXT
_FIQ:
push R1,R4 to [SP]
R1 = [P_INT_Ctrl]
R1 &= 0x2000
jz ?notTimerA //当不为FIQ_TMA,则跳转
R1 = [__gIsStopRecog]
jnz ?BSR_NotBusy //[__gIsStopRecog]为1,则转至放音处理
call _BSR_FIQ_Routine //为0,调用语音识别子程序
jmp ?BSR_Busy //返回中断
?BSR_NotBusy: //放音处理
call F_FIQ_Service_SACM_A2000; //调用A2000播放子程序
?BSR_Busy: //返回中断
R1 = 0x2000 //清FIQ_TMA中断状态
[P_INT_Clear] = R1
pop R1,R4 from [SP]; //寄存器组出栈
reti;
?notTimerA:
R1 = 0x8800; //清FIQ_TMA,FIQ_PWM中断状态
[P_INT_Clear] = R1;
pop R1,R4 from [SP]; //寄存器组出栈
reti;
_BREAK:
_IRQ0:
_IRQ1:
_IRQ2:
_IRQ3:
_IRQ4:
_IRQ5:
_IRQ6:
_IRQ7:
.END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -