打印
[ARM入门]

移植uCOS,错误出现在定时器初始化文件中,求指导

[复制链接]
1975|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zy250192333|  楼主 | 2013-8-7 09:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zy250192333 于 2013-8-7 09:56 编辑

我用的RVDS2.2移植uCOS到OK6410,但是错误出现在定时器初始化中,求指导啊!并且还有uCOS内核文件错误,错误原因都是数据类型不匹配(类似这个错误),怎么回事?就算按照编译器指示将所有错误位置类型匹配以后,用dnw串口下载运行时也出现application terminated,运行不了

错误如下:
C:\Users\zyhh\Desktop\捕获.PNG
说"void(*)(void)" 不能赋值给一个"unsigned int" 型。求助啊!

错误所在行 pISR_TIMER4 = Timer4_ISR;
源码如下:
#define pISR_TIMER4        (*(unsigned *)(_ISR_STARTADDRESS+0x90))

void  Timer4_ISR(void)
{
    unsigned long *p;
    unsigned long addr;//was set but never used
   
    S3C64XX_TIMERS *const timers = S3C64XX_GetBase_TIMERS();

    p = (unsigned long *)0x71200f00;//reset VIC register具体什么作用
    addr = *p;
   
    Uart_Printf("..............Enter Timer4_ISR....................\n");
    //you can do something here.
   
   
    // 清除TIMER4中断标志
    timers->CSTAT |= 0x200;
   
    *p = 0;
    OSTimeTick();//os_core.c
}

相关帖子

沙发
杨爱林林| | 2013-8-7 15:55 | 只看该作者
(*(unsigned *)(_ISR_STARTADDRESS+0x90))前面的
unsigned *
是神马啊

使用特权

评论回复
板凳
zy250192333|  楼主 | 2013-8-7 20:39 | 只看该作者
杨爱林林 发表于 2013-8-7 15:55
(*(unsigned *)(_ISR_STARTADDRESS+0x90))前面的
unsigned *
是神马啊

强制类型转换为指针

使用特权

评论回复
地板
杨爱林林| | 2013-8-7 21:53 | 只看该作者
那好像也没有 unsigned * 这个写法吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

6

帖子

0

粉丝