自学内容网 自学内容网

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

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


前言

在这里插入图片描述


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

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

1. 代码准备

.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

void delay_ms(unsigned int x) ;

2. 生成lib文件

在这里插入图片描述
在这里插入图片描述

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

1.添加.h文件路径

在这里插入图片描述

2. 调用生成的lib文件

屏蔽原来的函数

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


#include "STC8.H"

#include "delay.H"

#define MAIN_Fosc11059200L//¶¨ÒåÖ÷ʱÖÓ
#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 静态链接库和动态链接库,评论区欢迎讨论。


原文地址:https://blog.csdn.net/qq_42681425/article/details/143404009

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!