阅读:2088回复:4
在KEIL中能否完成以下的功能
生成一个库,让别人看不见我的原码,比如我自己编译的一个IIC的模块函数,我将它打成一个函数包,无法看见原码,但可以用,我提供给使用者这个库函数和头文件就可以了,他如果想要应用,则在他自己的程序中调用我的库,并更改头文件中的管脚配置即可?
说明:我在KEIL的OPTIONS的OUTPUT中设置过一次生成.LIB的库,但发现这样生成后就无法修改管脚的定义了。 |
|
沙发#
发布于:2005-02-25 16:16
不可以的,lib已经是编译好的代码了,管脚定义已经固化好了,修改头文件也不会变的,只能通过其他方法来实现这种功能了…………例如把管脚的赋值操作做成函数形式:
例如原来管脚是 P1^1,想改变管脚电平时原来是直接赋值 P1^1=0; 那现在你就用函数 void Pin1(unsigned char value) { P1^1=value; } 来代替,这样就把你原来的库分成了两层,一层是实现功能的,对于这层来说只会看到Pin1()这个函数,不会理会函数是怎么实现的;一层就是实际对管脚的操作。这样一来你可以把实现功能的打包成lib,把对管脚操作的函数公开代码,人家需要的时候只要改写这些函数就可以改变管脚的配置了~~~ 当然这样做是有代价的,就是会增加了程序代码占用的空间,不过对于I2C来说应该不打紧~~~ :D [编辑 - 2/25/05 by lbcat] |
|
板凳#
发布于:2005-02-26 00:24
你要做这些东东,可以向PHILIPS学习,PHILIPS在这方面是高手,他提供给你的库还只能全速运行,不能用单步执行,否则程序就跑乱了
|
|
地板#
发布于:2005-02-26 22:18
文个问题:怎么能编译生成库文件,我只知道应用!
|
|
|
地下室#
发布于:2005-02-28 08:20
在项目属性里的OUTPUT页面可以选择~~!!
|
|