ICCAVR中如何使用自己的库文件2005

制作和使用自定义库文件的范例: 
目标:1. 制作一个库文件libGetMax.a ,其中包含一个外部函数GetMax 。 函数GetMax的作用是判断两个输入参数(int 型)中的最大值,并返回最大值。 
      2. 制作一个应用范例,使用库libGetMax.a 中包含的GetMax函数。 
---------------------------------- 
步骤1: 库文件的生成 
  为叙述方便,请在C盘根目录中新建一目录,并将其命名为libtest。以下将C:\libtest简称为工作目录。 
  在ICCAVR IDE环境中新建两个文件,分别命名为GetMax.c和GetMax.h,并保存至工作目录中。两文件内容如下所示: 
********************************** 
//------GetMax.h的内容如下:------ 
#ifndef __GETMAX_LIB 

#define __GETMAX_LIB 

extern int GetMax( int a, int b ); 

#endif 
********************************** 
//------GetMax.c的内容如下:------ 
#i nclude "GetMax.h" 

int GettMax( int a, int b ) 

  return ( (a > b)?a:b ); 

********************************** 
    
    执行File菜单下的Compile File...项下的To Object项,将GetMax.c编译生成相应的目标文件GetMax.o 。 
    执行命令ilibw -a libGetMax.a GetMax.o生成库文件。可执行文件ilibw.exe位于icc安装完后的系统目录(默认安装时在C:\icc)的子目录bin中。为使用方便可将ilibw.exe拷贝至工作目录中使用。至此库文件libGetMax.a已生成,其对应的头文件为GetMax.h 。注意库文件的命名必须以“lib”字样开头,否则在IDE中编译下面的应用范例过程中自动链接时会报错(手动链接除外)。 

---------------------------------- 
步骤2:应用范例的编写和编译 
  在工作目录中建立一个工程Test.prj 。工程Test.prj中包含一个C源程序文件Test.c 。Test.C的源代码如下所示: 
********************************** 
//------Test.c的源代码如下:------ 

#i nclude "GetMax.h" 
void main( void ) 

 int Result,Value1,Value2; 
 Value1 = 0x10FF; 
 Value2 = 0x0FFF; 
 Result = GetMax( Value1, Value2); 

********************************** 
   
  然后,将前一步骤生成的库文件libGetMax.a拷贝至icc安装完后的系统目录(默认安装时在C:\icc)的子目录lib中。再执行Project菜单下的Option项,修改Target表单中的Additional Lib项,在文本框中输入GetMax (注意不能写成libGetMax.a)。 
    完成上述步骤后,就以编译和调试test.prj 。   
  如果在其它工程中需要使用上述库函数GetMax,只需拷贝所需的GetMax.h和libGetMax.a,并进行相应配置就可以了。 
  也可以在已有的库中增加一些自定义的函数。详细参考ICCAVR IDE 中的在线帮助。 
---------------------------------- 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值