This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于UCD3138 SWI中断中的定义问题!?

Other Parts Discussed in Thread: UCD3138

我在阅读UCD3138 Digital Power Supply Controller Technical Reference Manual文档时,看到软件中断C代码编写如下:

#pragma SWI_ALIAS (write_firqpr, 8)
void write_firqpr(unsigned long value);
#pragma SWI_ALIAS (write_reqmask, 9)
void write_reqmask(unsigned long value);
#pragma INTERRUPT(software_interrupt,SWI)
void software_interrupt(Uint32 arg1, Uint32 arg2, Uint32 arg3, Uint8 swi_number)
{
//make sure interrupts are disabled
asm(" MRS r3, cpsr "); // get psr
asm(" ORR r3, r3, #0xc0 "); // set interrupt disables
asm(" MSR cpsr, r3"); // restore psr
asm(" LDRB R3,[R14,#-1]"); // get swi number into R3 as fourth operand
switch (swi_number) // handle flash write/erase and ROM backdoor first
{
...
case 8: //write to fiq/irq program_control_register
CimRegs.FIRQPR.all = arg1;
return;
case 9: //write to fiq/irq program_control_register
CimRegs.REQMASK.all = arg1;
return;
...
default:
break;
}
}

以上代码中,8:定义为FIQ/IQR中断的选择;9:定义为中断的屏蔽;请问这种定义是固定的吗?能否将8定义为中断的屏蔽,而9定义为FIQ/IQR中断的选择?

如果这种定义是固定的,请问在那个一个文档能查找到这张定义表格!?