本帖最后由 泽文i 于 2021-4-18 23:15 编辑
8051 ELL函数库简介
ELL是efficient low-layer的缩写,意思是高效低封装,结合了HAL库和LL库的编程思想,既保证了通用性又降低了flash的过度占用。可谓是一举两得,高效、简洁、好用!
开发函数库,最初是为了满足我自己的生产需求,后来经过深思熟虑,我想做一个好用的通用库,所以把它开源出来,分享给广大工程师们。
函数库是基于Keil开发,支持Keil4和Keil5,支持Vscode协同开发,推荐使用EIDE插件。目前函数库主要适配了STC公司的单片机型号,以STC8系列为主。后续计划增加STC12、STC15、STC16系列。
新手如何入门
如果你明白了ELL函数库的架构,那么对你学习本库会有非常大的帮助!函数库采用了一个裸机框架来组织库文件。框架包括两大部分:工程文件和库文件。
工程文件主要存放Keil工程、Vscode文件、用户代码。这里可以根据你的编程习惯进行安排,非常的自由!库文件才是我们的重头戏,它主要分为四个部分:核心文件夹、片内外设库、组件库、设备驱动库。
核心文件夹:存放各种MCU的寄存器头文件、函数库重定义数据类型头文件、函数库常用数据结构头文件片内外设库:存放MCU的片内外设模块,是库的主要构成单元。组件库:配套8051内核开发的好用组件,具有一定的抽象性和封装性,能加速项目的开发,比如TMT时间片任务进程组件。设备驱动库:一些常用的外围芯片、模块,通过统一的驱动框架进行封装,方便开发。
下面是ELL函数库的框架图:
关键的是,我们该如何在工程里面使用函数库呢?我们提供了一个非常便捷的方法!我们拿STC8系列的ELL函数库举例,你只需要调用一个头文件8051_ELL_Lib.h,和配置一个头文件Lib_CFG.h。
通过配置Lib_CFG.h,可以实现对库裁剪和控制,定制适合你工程的函数库。而使用函数库内的API,只需要调用8051_ELL_Lib.h就可以了。 看到这里,如果你对本库产生了兴趣,可以通过下面下载:
gitee仓库 (需要注册账户下载,速度快) https://gitee.com/zeweni/ELL-8051-LIB
github仓库 (可以直接下载,但速度慢) https://github.com/zewen-i/8051-ELL-LIB
本库是开源项目,遵循 Apache 许可证 2.0 版本,可免费在商业产品中使用,不需要公布应用程序源码,没有潜在商业风险。
如果本项目对你有所帮助,可以通过下方的赞赏按钮,请我喝一杯咖啡!
QQ技术交流群:1001220381
我会在群里免费答疑和提供技术支持!
|