首页 > 其他分享 >Keil MDK生成LIB库以及使用LIB库

Keil MDK生成LIB库以及使用LIB库

时间:2024-06-22 09:58:48浏览次数:13  
标签:MDK 调用 LIB lib 文件 Keil keil 编译 工程

一.keil下lib静态库的使用具有以下优点:

1.封装源代码,对外不开放,提高保密性。

2.将标准功能函数封装成库,提高代码的复用性。

3.使用库开发,简化开发流程,提高开发效率。

4.系统调用库函数,提高执行效率。

二.keil环境下Lib库的生成

1.建立一个keil空的工程(如果库代码和处理器无关,处理器型号选哪个都可以)

2.修改编译输出方式选择为Create Library,也就是输出为创建lib库,如图所示:

3.可以有多个c文件和.h文件。

注:外部需要调用的.h文件可以包含在lib工程中一起编译,也可以不包含。

4.重新编译整个工程,编译完成后可在选中输出文件夹(Objects)中生成.lib文件:

至此lib库生成成功。

三.keil环境下Lib库的调用

   lib库生成之后需要调用该库,以替代原有的c文件,具体步骤如下:

1.将lib文件添加到系统工程中:

2.将之前参与编译的c文件从系统中移除(因为库文件替代了这部分代码的功能),或者lib库中的功能是新增的。

3.将需要调用的lib库的.h文件放到工程目录下。

4.重新编译工程,结果如下,可以看出库文件使用生效。替代了原来部分c文件的作用。

三.lib库工程代码

下载路径:https://download.csdn.net/download/xieliru/89468519

标签:MDK,调用,LIB,lib,文件,Keil,keil,编译,工程
From: https://blog.csdn.net/xieliru/article/details/139876512

相关文章

  • glibc库的交叉编译及使用
    1.环境准备宿主系统:ubuntu10.04交叉编译工具:arm-fsl-linux-gnueabi版本4.4.4下载glibc的源码包:ftp://ftp.gnu.org/gnu/glibc/glibc-2.11.1.tar.gz下载glibc-ports的源码包:ftp://ftp.gnu.org/gnu/glibc/glibc-ports-2.11.tar.gz2.分别解压缩文件:把glibc-ports-2.11文件夹......
  • 初识Python----“三剑客“之matplotlib(个人总结,一些简单的图形使用,适用于初学者)
            Matplotlib是Python中最受欢迎的数据可视化软件包之一,支持跨平台运行,它是Python常用的2D绘图库,同时它也提供了一部分3D绘图接口,Matplotlib通常与NumPy、Pandas一起使用,是数据分析中不可或缺的重要工具之一。        在数据分析中,我们......
  • arm环境,报错 no com_alibaba_nacos_shaded_io_grpc_netty_shaded_netty_transport_nat
    大概率版本号不对,sprintcloud版本+netty版本netty版本4.1.101.Final点击查看代码<dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.101.Final</version></dependency><depend......
  • 数据分析---matplotlib模块的使用
    1.摘要在数据可视化、统计绘图和图表生成领域,Python被广泛使用,其中Matplotlib是一个极其重要的基础三方库。本博客旨在介绍Python及其三方库Matplotlib的详细信息,包括Matplotlib的安装步骤、示例代码及使用注意事项。2.引言2.1什么是Matplotlib?Matplotlib是一......
  • JDK动态代理和CGLIB动态代理
    Java动态代理是一种在运行时创建代理对象的技术,它允许开发者在不修改目标类代码的情况下,通过代理类对目标类的实例方法进行增强或拦截。动态代理的核心价值在于能够在程序运行阶段动态地生成一个实现了预定义接口的新类,这个新类就是所谓的“代理类”。在Java中,有两种主要的实现方......
  • A Guide to Setting Plot Styles Based on the Matplotlib Library
    AGuidetoSettingPlotStylesBasedontheMatplotlibLibraryDateAuthorVersionNote2024.06.21DogTaoV1.0Finishthedocument.文章目录AGuidetoSettingPlotStylesBasedontheMatplotlibLibraryBasicUsageDrawplotsAdjuststyleSaveplotsAnnotatepl......
  • HCIA17 Python自动化基础 之telnet lib 库
    1.实验介绍及拓扑公司交换机,管理IP地址为192.168.0.101/24。现编写自动化脚本,查看设备当前配置文件。2.掌握内容及配置思路2.1掌握内容Python基本语法telnetlib基本方法2.2配置思路1.   完成设备Telnet预配置(配置Telnet密码,开启Telnet功能和允许Telne......
  • hashlib加密模块
    hashlib加密模块importhashlibmd5=hashlib.md5("你好".encode("utf-8"))#实例化把类的功能赋值给变量print(md5.hexdigest())md5.update('世界'.encode("utf-8"))print(md5.hexdigest(),len(md5.hexdigest()))sha256算法h=hashlib.sha256(......
  • 062篇 - 实用的库和框架(Useful Libraries and Frameworks)
    大家好,我是元壤教育的张涛,一名知识博主,专注于生成式人工智能(AIGC)各领域的研究与实践。我喜欢用简单的方法,帮助大家轻松掌握AIGC应用技术。我的愿景是通过我的文章和教程,帮助1000万人学好AIGC,用好AIGC。在本章中,我们将探讨一系列能够显著提高提示词工程师工作效率的实用库......
  • 一文带你了解STM32F4中断的概念,串口的概念,DMA的转运,以及如何运用在串口的收发上,串口收
    本篇主要实现的是用UART的接收中断接收数据,用DMA接收不定长的数据并发送回给电脑,接收信息控制LED灯的亮灭,成为点灯大师。什么是中断(EXIT)EXIT 外部中断/事件控制器,管理了控制器的20个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下......