找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4867|回复: 1
收起左侧

C51 LIB 的使用

[复制链接]
ID:59284 发表于 2014-2-26 19:22 | 显示全部楼层 |阅读模式
说通俗点, *.lib 文件就是 *.obj 文件的集合。*.obj 文件是 *.c 或*.asm(单片机中)编译的目标文件。这样一来,如果可以的话可以自己把经常用的函数、变量等 放在 *.lib 文件里就好了。



工程目录


*.M51 文件的一部分
其实在单片机中使用的 一些函数就是在 *.lib 中封装的。你可以打开用keil些的一个工程如上图我写的是一个2.4寸触摸屏。我已经把要用的函数封装在C51S.lib文件中了。所以只有 main.c 文件。打开 文件夹里的 *.M51 文件如图所示。一目了然使用了哪些MODULES。

好了现在可以开始创建自己库。在KEIL的安装目录中 *\C51\Hlp\lib51.chm有关于库命令的说明可以参考不过有一点就是 *.h 文件, 大家可以看见在 *\C51\INC 里有很多 *.h 文件。为什么要呢? 问了 声明 使用。如果不声明main函数是找不到的 编译就出错,而 *.lib 是链接使用的。所以 要添加 你的 *.h 文件到 INC 目录里 。里面放函数变量的声明就可以啦!

简单的方法 用命令行:比如 uart 的使用 你自己写了 传输 接受的 函数 在 uart.h 文件里声明。在 uart.c文件里实现。那么,在工程目录里就应该有uart.obj文件。好了开始定制。把 uart.h 拷贝靠 keil 的 INC 目录,uart.obj 拷到 LIB 目录。对了,还有一点:为了使用方便把 *\C51\BIN 添加到 path 环境变量中。好了,打开 cmd 进入 keil 的LIB目录。 输入命令 lib51:


lib51
可以了添加库了,使用 add *.obj to *.lib 其中 *.obj 是你刚才拷过来的uart.obj *.lib 是任意名字 可以是 存在的 也可使不存在的。一切完成你可以像使用 _cror_() 函数一样 使用你自己定制的函数了。

另一种方法是 使用 Keil IDE 设置 帮助文档里有 很简单。

回复

使用道具 举报

ID:59133 发表于 2014-3-5 11:54 | 显示全部楼层
谢谢!学习了。练习一下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表