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

cc2640 定时器编译

void TimerIsr(void)

{

// 

}

TimerIntRegister(GPT0_BASE, TIMER_A, TimerIsr);

为什么调用TimerInitRegister 注册接口,IAR编译器报如下错误。

error[lp023]:absolute placement(in [0x20000000-0x200000c7])overlaps with absolute symbol;[0x20000000-0x200000c7]"ti_sysbios_famly_am_m3_hwi_ramvectors"

Susan Yang:

若是不调用TimerInitRegister时程序是正常运行的?您现在这段程序是放在哪里了?

The IntRegister functions in here will copy the vector table from Flash to RAM and patch the vector table in RAM. This will overwrite any interrupts TI RTOS had configured up in RAM already. TI RTOS API Hwi_construct should be used instead.

Viki Shi:

absolute placemen跟absolute symbol冲突了,追踪下哪块代码写到了这一部分,或者用TI例程试一下

yi yi21:

回复 Viki Shi:

我安装的库版本为simplelink_cc2640r2_sdk_1_40_00_45。请问timer例程放在那个目录下。

yi yi21:

回复 Susan Yang:

不调用TimerIntRegister程序能编译通过,调用的话编译报错。

Viki Shi:

回复 yi yi21:

我是1.50版本,路径在C:\ti\simplelink_cc2640r2_sdk_1_50_00_58\source\ti\drivers

yi yi21:

回复 Viki Shi:

已测试该目录下的tidriver层GPTimer例程,但定时精度达不到要求,定时200us,实际上有50us左右偏差。所以测试driverlib层timer接口。但是编译报错。请问tidriver层有操作系统参与吗,对实时性是否有影响。如果对定时实时性要求较高,有解决办法没?

赞(0)
未经允许不得转载:TI中文支持网 » cc2640 定时器编译
分享到: 更多 (0)