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