Keil中LIB库的作用、生成与调用

来源:互联网 发布:c语言100道经典案例 编辑:程序博客网 时间:2024/04/28 03:46

               KeilLIB库的作用、生成与调用


LIB库有什么用,一个简单的例子就是Silicon Labs为C8051F单片机USB提供的USBXpress LIB库了,如USB发送数据、接收数据等,都是通用性很强的函数,但因为保密的原因,这个函数是怎么写的,用户是不知道的,只提供接口的API函数,只要调用这些函数即可完成相应功能。


下面以自己开发的NOKIA5110液晶的驱动程序演示一下LIB库德生成与调用。


target里面”Options for Target ’Target 1’”里面的output选择create library



 



 


    (这里可以没有main主函数和一些管脚的定义等,只是NOKIA5110驱动函数)。


点击Rebuild all the target files,就生成.lib文件。


 


        把上面的工程生成的.LIB文件放入新的文件夹里,在这个文件夹编写一个调用LIB库的程序。把.LIB文件添加到工程里面去,在工程里的H头文件里对NOKIA5110.LIB里的函数进行声明,这样主函数就能调用.LIB里的NOKIA5110的驱动函数了。



 



 


LIB库文件生成调用演示程序:http://space.ednchina.com/Upload/2010/4/19/a8cfdeaf-c1e1-4b2f-8d66-fb3fbc02504c.rar


 


BTW:在Keil C中调用USBXpress的函数也是上面的办法,但如果编译器用的Silicon Laboratories IDE的时候要注意添加.LIB库德步骤就不一样了。


Silicon labs的这个IDE其实也就是一个壳,编译程序之前要设置好调用keil编译核心的路径。


Project——Tool Chain Integration


 



 



 






 



 


Silicon Laboratories IDE LIB库文件的调用


1. Project -> Target Build Configuration -> Customize -> Files to Link -> Add External OBJ
2.在 'List files of type' drop-down box from 'Object Files' 选择'All files'类型,. 选择要添加的LIB文件。
3. 点击 OK.



 


点击看大图 


 


本文参考:


1)  How to use USB_Clock_Start() in firmware


http://www.cygnal.org/ubb/Forum9/HTML/000844.html 


2) Keil C 里面Lib库文件的生成与调用


http://blog.ednchina.com/Alexi2008/224810/message.aspx


3) 把源代码给人家?源代码隐藏高招--把关键的程序用Lib包含进来!

http://www.dzsc.com/dzbbs/20050405/2007651925293610.html
0 0
原创粉丝点击