【编译器】KEIL 静态链接库和动态链接库

【编译器】KEIL 静态链接库和动态链接库


### 文章目录

  • [@TOC(文章目录)](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [前言](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [一、工程1------生成静态链接库](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [1. 代码准备](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [2. 生成lib文件](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [二、工程2------调用静态链接库](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [1.添加.h文件路径](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [2. 调用生成的lib文件](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [三、参考资料](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)
  • [总结](#文章目录 @TOC 前言 一、工程1——生成静态链接库 1. 代码准备 2. 生成lib文件 二、工程2——调用静态链接库 1.添加.h文件路径 2. 调用生成的lib文件 三、参考资料 总结)

前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、工程1------生成静态链接库

1. 代码准备

.c

c 复制代码
#include "delay.H"

void delay_ms(unsigned int x) 
{  
	unsigned int j,i;   
	for(j=0;j<x;j++)   
	{    
		for(i=0;i<1100;i++);   
	}  
}

.h

c 复制代码
void delay_ms(unsigned int x) ;

2. 生成lib文件


二、工程2------调用静态链接库

1.添加.h文件路径

2. 调用生成的lib文件

屏蔽原来的函数

c 复制代码
/**************************************************************************************
ʵÑéÏÖÏó£ºÏÂÔØ³ÌÐòºó"LED&½>>ͨµÆÄ£¿é"µÄD1ָʾµÆÉÁ˸
½ÓÏß˵Ã÷£º STC8Aµ¥Æ¬>>ú-->LED&½>>ͨµÆÄ£¿é
		   P00-->D1	
×¢ÒâÊÂÏUSBÁ¬½ÓÏ߸ø¿ª·¢°åͨµçÏÂÔØ³ÌÐò£¬STCÏÂÔØÈí¼þÖÐÄÚ²¿IRCʱÖÓÑ¡Ôñ11.0592MHZ																				  
***************************************************************************************/


#include "STC8.H"

#include "delay.H"

#define MAIN_Fosc		11059200L	//¶¨ÒåÖ÷ʱÖÓ
#define  uint16   unsigned int  
#define  uint8    unsigned char  

/**********************
Òý½Å±ðÃû¶¨Òå
***********************/			
sbit led1=P0^0;     //ÓÃIO¿ÚP00
 
/**************************************
¹¦ÄÜÃèÊö£ºÑÓʱº¯Êý
Èë¿Ú²ÎÊý£ºuint16 x £¬¸ÃֵΪ1ʱ£¬ÑÓʱ1ms
·µ>>ØÖµ£ºÎÞ
***************************************/
//void delay_ms(uint16 x) 
//{  
//	uint16 j,i;   
//	for(j=0;j<x;j++)   
//	{    
//		for(i=0;i<1100;i++);   
//	}  
//}

/***********************
¹¦ÄÜÃèÊö£ºÖ÷º¯Êý
Èë¿Ú²ÎÊý£ºÎÞ
·µ>>ØÖµ£ºÎÞ
************************/
int main()
{
  P0M1 &= 0xFE;	P0M0 &= 0xFE;	  //ÉèÖÃP0.7Ϊ׼Ë<<Ïò¿Ú

  while(1)
  {
		led1=0;	      //µãÁÁD1ָʾµÆ
		delay_ms(500);
		led1=1;	      //ϨÃðD1ָʾµÆ
		delay_ms(500);
	}
}

编译通过

三、参考资料

Keil的lib生成个人总结
静态链接库和动态链接库
C语言----静态链接库和动态链接库
MDK KEIL程序代码编译成静态库文件及库引用笔记教程
基于keil下的多文件夹打包生成LIB库的操作步骤

总结

本文仅仅简单介绍了【编译器】KEIL 静态链接库和动态链接库,评论区欢迎讨论。

相关推荐
Nil20814 分钟前
leetcode 230二叉搜索树中第k小的元素
算法·leetcode·职场和发展
被怪兽吃掉了15 分钟前
5.2.1一维组数定义方式
开发语言·c++·算法
不会就选b18 分钟前
Linux之线程进阶---封装信号量
数据结构·算法
不会就选b19 分钟前
算法日常・每日刷题--<BFS&&最短路径>4
算法·宽度优先
旖旎夜光22 分钟前
LeetCode 69:x 的平方根(二分查找) —— 题解
数据结构·c++·算法·leetcode·二分查找
末代iOS程序员华仔29 分钟前
Codex + Figma 生成 Objective‑C (UIKit) 完整工作流
c语言·开发语言·figma
sel_932 分钟前
【Pytorch】PyTorch 深度学习框架详解:从安装到实战
人工智能·pytorch·深度学习·算法·语言模型
学习星球34 分钟前
【LeetCode算法题精讲】图算法精讲——从图遍历到拓扑排序
数据结构·算法·leetcode·图搜索
_Narcissus_42 分钟前
常见数论算法笔记
数据结构·c++·算法·高精度·数论·快速幂·质数筛
CVHub1 小时前
智能标注工具 X-AnyLabeling v4 全面升级:迈向 AI 时代的数据生产基础设施
人工智能·算法·github