标签:
void Int_timer_tf2( void ) interrupt 7 using 2 { ... source lines ... }
There are two keywords:
interrupt x defines the interrupt number. This number tells compiler which vector address you want. See also the manual "Cx51 Compiler User‘s guide - Chapter 3 Language Extensions - Function Declarations - Interrupt Functions" on p. 125. Look at the table "Interrupt Number" to "Adress"!
using x defines the desired register bank access for the interrupt function.
In the example mentioned above, the function Int_timer_tf2() will be called if an TF2 event occurs, because the interrupt vector address is 0x003B. This function use the register bank 2 (Registers in Addr 0x10 to 0x17).
If you want to get other interrupt vector addresses than the standard one described in the manual you have to define your own interrupt vector addresses with the INTVECTOR and INTERVAL control directives. Please read the manual.
标签:
原文地址:http://my.oschina.net/Jr413/blog/394302