njutli 发表于 2017-12-26 22:39

UCOS-II的源码里找不到OSTickISR


如题,我在UCOS官网上下载了UCOS的源码和用于移植到2410上的源码,在os_cpu_a.s里面找不到OSTickISR函数,其他文件里面也都没有,找到了OSTimeTick函数的定义,却找不到有任何地方引用了这个函数,难道这个函数废弃了吗,那时钟节拍的中断服务程序在哪儿

ayb_ice 发表于 2017-12-27 09:59

这个是需要移植的

njutli 发表于 2017-12-27 10:41

ayb_ice 发表于 2017-12-27 09:59
这个是需要移植的

请看清楚问题,我现在看的源码就是官网提供的已经修改过的用于移植到2410上的源码,里面对一些与处理器相关的操作都有相应的汇编语言实现,除了OSTickISR

ayb_ice 发表于 2017-12-27 10:44

njutli 发表于 2017-12-27 10:41
请看清楚问题,我现在看的源码就是官网提供的已经修改过的用于移植到2410上的源码,里面对一些与处理器相 ...

那很有可能在启动文件里

njutli 发表于 2017-12-27 15:19

在frmwrk.c里面找到了FRMWRK_vStartTicker函数,这里有一句pISR_TC1OI = (U32)OSTimeTick;,其中#define pISR_TC1OI      (*(U32 *)(ISR_BADDR+0x40)),估计就是在这个时候将OSTimeTick传到时钟节拍中断服务程序里调用的,不知道这样理解对不对

njutli 发表于 2017-12-28 09:22

刚刚又看了一下源码,之前说的frmwrk.c实际上是对应EP73XX的,不是对应2410的,2410里的做法又不一样,OSTimeTick是通过看门狗中断__vWDTInterrupt调用的,看门狗中断服务程序通过pISR_WDT = (U32)__vWDTInterrupt;调用。以上是我的理解,望大神指正
页: [1]
查看完整版本: UCOS-II的源码里找不到OSTickISR