aytc100 发表于 2014-8-14 15:14:23

求助:如何用LGTSDK Builder 1.5beta配合IAR写中断头?

用LGTSDK Builder 1.5beta把初始化代码配好了。要用TIME2的溢出中断,定时用串口输出数据。中断头如下所示:

#pragma vector = 18
__interruptvoid LGT_VECTOR_S_IVN_TC2_TOV(void)
{
    DrvUSART_SendChar(a);
    DrvUSART_SendChar(b);
}

然后编译的时候就出现这两个错误。
Error: expected an identifier
Error: expected a ";"

这个程序加中断之前能正常工作。

aytc100 发表于 2014-8-15 14:45:46



这个是源文件

LGT 发表于 2014-8-15 16:04:26

本帖最后由 LGT 于 2014-8-15 16:06 编辑

aytc100 发表于 2014-8-15 14:45
这个是源文件

LGTSDK_Builder工具会自动产生中断服务函数;你只需要填写中断服务代码就可以了。

1. 首先建立项目是,选好目标器件, IDE类型选择IAR
2-0, 确认下Device View里,Settings下面设置了IAR的工具路径
2-1. 在Timer/Counter 2配置页面,勾选你需要的中断类型
3. 产生SDK工程代码
4. 在SDK Viewl里, 双击自动产生的中断服务文件, isr_auto.c (如果配置使能了中断,会自动产生这个文件)
5. 在isr_auto.c里面填写中断服务代码。

aytc100 发表于 2014-8-15 20:03:00

LGT 发表于 2014-8-15 16:04
LGTSDK_Builder工具会自动产生中断服务函数;你只需要填写中断服务代码就可以了。

1. 首先建立项目是, ...

多谢指点。我已经搞定了。补充一点:最后得在程序里合适的位置加

SREG|=0x80;

开启全局中断,才能有中断输出。初始化之后默认全局中断是关闭的。
页: [1]
查看完整版本: 求助:如何用LGTSDK Builder 1.5beta配合IAR写中断头?