TI中文支持网
TI专业的中文技术问题搜集分享网站

求教函数声明问题

太阳能例程里面,声明函数中断使用了如下语句:

#ifdef FLASH_F28M35x
#pragma CODE_SECTION(Inv_ISR,"ramfuncs");
#endif
__interrupt void Inv_ISR(void);

#pragma INTERRUPT (DPL_ISR, HPI)
#pragma INTERRUPT (Inv_ISR, LPI)

不是很明白,声明中断函数不是有__interrupt void Inv_ISR(void);就可以了吗?为什么还要把它对应到ramfuncs段里呢,这个段不是对应的initialflash函数吗?

后面的定义也不是很明白。

user1088122:

中断函数是在ramfuncs段中的,不过

#pragma INTERRUPT (DPL_ISR, HPI)#pragma INTERRUPT (Inv_ISR, LPI)

是什么意思呢?

太阳能例程里面,声明函数中断使用了如下语句:

#ifdef FLASH_F28M35x
#pragma CODE_SECTION(Inv_ISR,"ramfuncs");
#endif
__interrupt void Inv_ISR(void);

#pragma INTERRUPT (DPL_ISR, HPI)
#pragma INTERRUPT (Inv_ISR, LPI)

不是很明白,声明中断函数不是有__interrupt void Inv_ISR(void);就可以了吗?为什么还要把它对应到ramfuncs段里呢,这个段不是对应的initialflash函数吗?

后面的定义也不是很明白。

Joey Mao:

#ifdef FLASH_F28M35x#pragma CODE_SECTION(Inv_ISR,"ramfuncs");#endif

这几句作用是将函数Inv_ISR从Flash Copy到Ram中运行

太阳能例程里面,声明函数中断使用了如下语句:

#ifdef FLASH_F28M35x
#pragma CODE_SECTION(Inv_ISR,"ramfuncs");
#endif
__interrupt void Inv_ISR(void);

#pragma INTERRUPT (DPL_ISR, HPI)
#pragma INTERRUPT (Inv_ISR, LPI)

不是很明白,声明中断函数不是有__interrupt void Inv_ISR(void);就可以了吗?为什么还要把它对应到ramfuncs段里呢,这个段不是对应的initialflash函数吗?

后面的定义也不是很明白。

user1088122:

回复 Joey Mao:

请问,中断函数声明interrupt前面加两个下划线是什么作用呢?最后两句程序#pragma interrupt起什么作用呢?

赞(0)
未经允许不得转载:TI中文支持网 » 求教函数声明问题
分享到: 更多 (0)