⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isr.asm

📁 用凌阳61板实现语音播放的程序
💻 ASM
字号:
	.text
	.include hardware.inc            // 包含SPCE061A硬件声明头文件
	.include a2000.inc               //包含用A2000函数的头文件
	.public _FIQ                     //声明中断入口函数
_FIQ:
	PUSH R1,R4 to [sp];              //寄存器入栈 
	R1 = 0x2000;
	test R1,[P_INT_Ctrl];            //判断是否是定时器A中断
	jnz L_FIQ_TimerA;
	R1 = 0x0800;
	test R1,[P_INT_Ctrl];           //判断是否是定时器B中断
	jnz L_FIQ_TimerB;
	L_FIQ_PWM:
	R1 = C_FIQ_PWM;                      //进入PWM中断
	[P_INT_Clear] = R1;                  //清除PWM中断标志
	POP R1,R4 from[sp];                  //出栈恢复
	RETI;
L_FIQ_TimerA:                       //进入定时器A中断
[P_INT_Clear] = R1;                 //清除定时器A中断标志

call F_FIQ_Service_SACM_A2000;       // 将语音送到DAC通道
pop R1,R4 from [sp];                 //出栈恢复
RETI;                                 //中断返回
L_FIQ_TimerB:                       //进入定时器B中断
[P_INT_Clear] = R1;                   //清除定时器B中断标志
pop R1,R4 from [sp];                  //出栈恢复
RETI;                                 //中断返回


//===================================================================================
//函数:F_ClearWatchdog()
//语法:void F_ClearWatchdog(void)
//描述:清看门狗
//参数:无
//返回:无
//===================================================================================
.code
.public _F_ClearWatchdog;
_F_ClearWatchdog: .proc
    R1 = 0x0001;
    [P_Watchdog_Clear] = R1;
    RETF;
.ENDP	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -