📄 fiq.asm
字号:
//===================================================
//文件名称:FIQ.asm
//功能描述:中断放音
//完成日期:2003-6-12
//======================================================
.PUBLIC _FIQ
//...............................................
.EXTERNAL _BSR_FIQ_Routine
.EXTERNAL __gIsStopRecog //This variable = 0 if recognizer is busy,
// = 1 if recognizer is stopped,
// = 2 if recognizer is paused.
.PUBLIC _BREAK,_IRQ0, _IRQ1, _IRQ2, _IRQ3, _IRQ4, _IRQ5, _IRQ6, _IRQ7
//..................................................
.INCLUDE A2000.inc;
.INCLUDE hardware.inc
.DEFINE P_WatchDog_Clear 0x7012
.TEXT
_FIQ:
push r1,r4 to [sp] //寄存器入栈
r1=0x0001;
[P_WatchDog_Clear]=r1;
r1 = [P_INT_Ctrl] //读中断标志位
r1 &= 0x2000
jz NotTimerA //不是TimerA FIQ中断
r1 = [__gIsStopRecog]
jnz TimerA_is_A2000
TimerA_is_Recognize: //TimerA FIQ为语音识别服务
call _BSR_FIQ_Routine //语音识别服务函数
jmp NotTimerA
TimerA_is_A2000: //TimerA FIQ为放音服务
call F_FIQ_Service_SACM_A2000; //放音服务函数
NotTimerA:
r1 = 0xa800;
[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 + -