关于c430中断程序的格式[移植旧程序时需要注意了]
以前也遇到过这个问题,那时候正忙着毕业,解决了也就忘记了。现在又遇到这个问题,想说两句。
在魏小龙编的那本400多页的书上给出的中断程序格式是
interrupt[PORT1_VECTOR] void port1key(void)
{
……
……
}在书中234页
430 C指南.pdf 中的说法是
Interrupt [0 18] void UART-handler (void)
{
if (TCCTL&4)
receive ( );
else
transmit ( );
}
矢量地址在本例中为0 18 是对于INTVEC 段0 FFE0 的偏移此例将
把矢量置于0 FFF8 单元
但在我用的 EW430_310 正式破解版 的帮助文件 EW430_CompilerReference.pdf中给出的格式是
#pragma vector=0x14
__interrupt void my_interrupt_routine()
{
/* Do something */
}
在第36页。
只有按照帮助文件中的格式才可以编译,那书上的说法从何而来呢?就一个格式的问题整得我两天吃不香睡不好[EM12] |
[ 此贴最后由DC在2008-10-9 23:53:56编辑过 ]
|