【经验】解密Simplicity开发工具如何制作MCU库函数

2016-11-26 世强 Carol

很多客户的MCU软件开发会涉及到保密性,其中有很多重要的算法为公司独有,不希望公开源代码。同时,客户也希望在软件开发方面得到支持,因此需要我们提供的软件在不开放源代码的前提下可供客户使用。这就需要我们制作库函数(*.LIB)提供给客户。


本文就以Silicon LabsSimplicity Studio开发工具指导库函数的制作和调用的具体做法。以8位MCU EFM8SB20F16G为例,提供了单个及多个参数返回的实际应用案例,供参考。


Simplicity Studio制作LIB文件

1)新建一个staticLibrary工程

打开Simplicity IDE,选择Project->New->Silicon Labs MCU Project,选好型号后next,如图1所示:

 

 

图1:新建staticLibrary工程


一直Next,直到新建好工程。


2)增加Lib_sekorm.c文件到工程中,如图2所示:

 

图2:增加Lib_sekorm.c文件到工程


Lib_sekorm.c的内容如下:

unsigned int getxx(unsigned int x)

{

   return x*x;

}


void get_xyz(int *x,int *y,int *z,int a)

{

  *x = a * 2;

  *y = a * 3;

  *z = a * 4;

}


3)选中工程,鼠标右键选择Properties -> C/C++ Build -> Settings -> Build Artifact,在Artifact Type栏选择Static Library,如图3所示:


 

图3:Artifact Type栏选择Static Library


4)Build该工程,生成staticLibrary.lib


在新工程中调用此staticLibrary.lib

1)新建空工程,参考上面新建工程步骤,只是将Project Type从Library改成Empty Program,如图4所示:

 

图4:新建空工程


2)编写lib_sekorm.h文件,并将文件加入到该工程。内容如下:


#ifndef _LIB_SEKORM_H_

#define _LIB_SEKORM_H_

extern unsigned int getxx(unsigned int x);

extern void get_xyz(int *x,int *y,int *z,int a);

#endif


3)编写调用文件test_lib_main.c,内容如下:


#include <SI_EFM8SB2_Register_Enums.h>

#include "lib_sekorm.h"

int main (void)

{

unsigned int a;

int x,y,z;

a = getxx(23);

get_xyz(&x,&y,&z,100);

while(1);

}


4)添加lib_sekorm.h文件路径,Properties -> C/C++ Build -> Settings -> Tool Settings -> Keil 8051 Compiler -> Includes,如图5所示:


 

图5:添加lib_sekorm.h文件路径


5)将staticLibrary.lib文件拷贝到该工程目录下,并设置,或者选择Properties -> C/C++ General -> Paths and symbols -> Libraries页面,Add -> WorkSpace...,添加 staticLibrary.lib在工程中的路径,如图6所示:

 

图6:添加 staticLibrary.lib在工程中的路径


6)编译工程生成执行文件,如图7所示:

 

图7:编译工程生成执行文件


通过以上的步骤,可以实现生成LIB库文件,并且在新工程中可以正确调用LIB库函数。


看到这里您是否又有项目灵感需实现,点击下面开发软件帮你忙。

Silicon Labs Simplicity Studio平台开发工具

相关服务

  • +1 赞 0
  • 评论 0

相关推荐

型号 描述 价格(含增值税)

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB1、 EFM8SB10F8G系列

Low Power, 8kB 512B RAM, 12b ADC, 13 ch CapSense

QFN20

选型推荐

供货保障

原厂认证

世强代理

现货189,281

最小包装量1,500

价格¥  4.4007

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8LB1x-QFN24、EFM8系列

16kB flash, 1.25 kB RAM, 12b ADC, ±3°C temp sensor, SMBus bootloader

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货411,000

最小包装量1,500

价格¥  5.7759

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货67,500

最小包装量2,500

价格¥  8.2512

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB2、 EFM8SB20F32G系列

Low Power, 32kB/4352B RAM, 10b ADC

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货30,000

最小包装量1,500

价格¥  6.3260

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB1、 EFM8SB10F8G系列

Low Power, 8kB/512B RAM, 12b ADC, 12 ch CapSense

CSP16

选型推荐

供货保障

原厂认证

世强代理

现货25,536

最小包装量2,500

价格¥  5.0424

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8LB1x-QFN24、EFM8系列

32kB flash, 2.25 kB RAM, 14b ADC, 2x DACs, ±3°C temp sensor, SMBus bootloader

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货2,643,000

最小包装量1,500

价格¥  7.3344

8位MCU

EFM8、EFM8UB2、EFM8UB20F64G-B、EFM8UB20F64G-B-QFP48系列

8051 48 MHz 64 kB flash 4 kB RAM 8-bit Universal Bee MCU

QFP48

选型推荐

供货保障

原厂认证

世强代理

现货16,900

最小包装量500

价格¥  11.9184

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB2、 EFM8SB20F16G系列

Low Power, 16kB/4352B RAM, 10b ADC

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货15,475

最小包装量1,500

价格¥  5.6842

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8LB1x-QFN24、EFM8系列

64kB flash, 4.25 kB RAM, 14b ADC, 4x DACs, ±3°C temp sensor, SMBus bootloader

QFN24

原厂认证

世强代理

现货1,190

最小包装量1,500

价格¥  9.3514

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB1、 EFM8SB10F4G系列

Low Power, 4kB 512B RAM, 12b ADC, 13 ch CapSense

QFN20

选型推荐

供货保障

原厂认证

世强代理

现货10,480

最小包装量1,500

价格¥  3.8506

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB1、 EFM8SB10F8G系列

Low Power, 8kB 512B RAM, 12b ADC, 14 ch CapSense

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货25,500

最小包装量1,500

价格¥  4.5840

8位MCU

EFM8 Busy Bee、EFM8BB20系列

8-bit C8051 core with 50 MHz;Up to 16 multifunction

BGA120

EFM8 Busy Bee、EFM8BB20

选型推荐

供货保障

原厂认证

世强代理

现货7,500

最小包装量1,500

价格¥  4.3090

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货4,900

最小包装量1,500

价格¥  7.8845

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货4,500

最小包装量1,500

价格¥  5.7759

8位MCU

EFM8 Laser Bee Family、 EFM8LB1、 EFM8LB11F、 EFM8LB11F32E系列

32kB flash, 2.25 kB RAM, 14b ADC, 2x DACs, ±3°C temp sensor

QFN24

原厂认证

世强代理

现货3,940

最小包装量1,500

价格¥  7.3344

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货3,000

最小包装量1,500

价格¥  7.3344

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货2,800

最小包装量1,500

价格¥  9.3514

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  6.4176

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  7.7011

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  9.7181

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  5.9592

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  7.7011

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  6.4176

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

64kB flash, 4.25kB RAM, 14b ADC, 4x DACs, ±3°C temp sensor

QFN32

选型推荐

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  9.7181

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货2,500

最小包装量2,500

价格¥  5.9592

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB1、 EFM8SB10F8G系列

Low Power, 8kB 512B RAM, 12b ADC, 14 ch CapSense

QSOP24

供货保障

原厂认证

世强代理

现货2,350

最小包装量2,500

价格¥  5.0424

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货2,070

最小包装量1,500

价格¥  7.8845

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB2、 EFM8SB20F64G系列

Low Power, 64kB/4352B RAM, 10b ADC

QFN32

供货保障

原厂认证

世强代理

现货2,048

最小包装量1,500

价格¥  8.8013

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB2、 EFM8SB20F64G系列

Low Power, 64kB/4352B RAM, 10b ADC

QFN24

供货保障

原厂认证

世强代理

现货1,814

最小包装量1,500

价格¥  7.8845

8位MCU

EFM8 Sleepy Bee Family、 EFM8SB2、 EFM8SB20F32G系列

Low Power, 32kB/4352B RAM, 10b ADC

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货979

最小包装量1,500

价格¥  6.9677

本网站所有内容禁止转载,否则追究法律责任!

评论(0

   |   

提交评论

全部评论

暂无评论

搞研发 找元件
下载世强元件电商APP