【编译器】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 静态链接库和动态链接库,评论区欢迎讨论。

相关推荐
CoovallyAIHub1 小时前
港大&字节重磅发布DanceGRPO:突破视觉生成RLHF瓶颈,多项任务性能提升超180%!
深度学习·算法·计算机视觉
CoovallyAIHub2 小时前
英伟达ViPE重磅发布!解决3D感知难题,SLAM+深度学习完美融合(附带数据集下载地址)
深度学习·算法·计算机视觉
聚客AI19 小时前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
大怪v21 小时前
前端:人工智能?我也会啊!来个花活,😎😎😎“自动驾驶”整起!
前端·javascript·算法
惯导马工1 天前
【论文导读】ORB-SLAM3:An Accurate Open-Source Library for Visual, Visual-Inertial and
深度学习·算法
骑自行车的码农1 天前
【React用到的一些算法】游标和栈
算法·react.js
博笙困了1 天前
AcWing学习——双指针算法
c++·算法
moonlifesudo1 天前
322:零钱兑换(三种方法)
算法
NAGNIP2 天前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
美团技术团队2 天前
LongCat-Flash:如何使用 SGLang 部署美团 Agentic 模型
人工智能·算法