• IAR for msp430 MDK中 warning: #223-D: function "xxx" declared implicitly 解决方法


    今天在EINT的范例里添加了一个函数,即eint.c中添加了一个datawrite()的函数,并在主函数main.c中调用,编译便警告

    warning: #223-D: function "datawrite()" declared implicitly

    很奇怪,在eint.c中也有初始化函数EINTInit()同样在main.c中调用没有问题,问什么偏偏这个不行。

    但毕竟是个警告,还不是错误,做了个测试IO,

    while(1)
      {
        FIO1SET = 1<<19;
       delaySysTick(10);
       Data_write(0xff00, 0xff);
       FIO1CLR = 1<<19;
       delaySysTick(10);
      }

    下载执行后发现,此IO根本没有输出。

    看来这个警告还是不能回避的,在网上差了下,有类似问题说是库的原因,具体是什么也没说清楚。于是尝试着一一打开库文件,打开eint.h,恍然大悟,这里赫然写着

    extern void EINT0_IRQHandler(void) __irq;
    extern DWORD EINTInit( void );

    原来在这里将eint.c中的函数与main.c相关联,也就是在eint.c中添加了新函数,还有在这里声明调用才行。

    eint.h中,添加

    extern void Data_write(WORD addr, BYTE data);

    即可

  • 相关阅读:
    Asp.Net生成二维码(中间加logo)
    简单的图片上传
    C#读取路径
    Asp.Net读取配置文件
    C#监听服务
    jQuery 遍历--siblings() 方法、each() 方法
    Window 6大内置对象
    MySQL中几个重要的参数
    DNS构建实战(下篇)
    DNS构建实战(上篇)
  • 原文地址:https://www.cnblogs.com/xiacf88/p/3272379.html
Copyright © 2020-2023  润新知