8051 ELL函數(shù)庫簡介
ELL是efficient low-layer的縮寫,意思是高效低封裝,結(jié)合了HAL庫和LL庫的編程思想,既保證了通用性又降低了flash的過度占用。可謂是一舉兩得,高效、簡潔、好用!
開發(fā)函數(shù)庫,最初是為了滿足我自己的生產(chǎn)需求,后來經(jīng)過深思熟慮,我想做一個(gè)好用的通用庫,所以把它開源出來,分享給廣大工程師們。
函數(shù)庫是基于Keil開發(fā),支持Keil4和Keil5,支持Vscode協(xié)同開發(fā),推薦使用EIDE插件。目前函數(shù)庫主要適配了STC公司的單片機(jī)型號(hào),以STC8系列為主。后續(xù)計(jì)劃增加STC12、STC15、STC16系列。
新手如何入門
如果你明白了ELL函數(shù)庫的架構(gòu),那么對你學(xué)習(xí)本庫會(huì)有非常大的幫助!函數(shù)庫采用了一個(gè)裸機(jī)框架來組織庫文件。框架包括兩大部分:工程文件和庫文件。
工程文件主要存放Keil工程、Vscode文件、用戶代碼。這里可以根據(jù)你的編程習(xí)慣進(jìn)行安排,非常的自由!庫文件才是我們的重頭戲,它主要分為四個(gè)部分:核心文件夾、片內(nèi)外設(shè)庫、組件庫、設(shè)備驅(qū)動(dòng)庫。
C
核心文件夾:存放各種MCU的寄存器頭文件、函數(shù)庫重定義數(shù)據(jù)類型頭文件、函數(shù)庫常用數(shù)據(jù)結(jié)構(gòu)頭文件片內(nèi)外設(shè)庫:存放MCU的片內(nèi)外設(shè)模塊,是庫的主要構(gòu)成單元。組件庫:配套8051內(nèi)核開發(fā)的好用組件,具有一定的抽象性和封裝性,能加速項(xiàng)目的開發(fā),比如TMT時(shí)間片任務(wù)進(jìn)程組件。設(shè)備驅(qū)動(dòng)庫:一些常用的外圍芯片、模塊,通過統(tǒng)一的驅(qū)動(dòng)框架進(jìn)行封裝,方便開發(fā)。
下面是ELL函數(shù)庫的框架圖:

關(guān)鍵的是,我們該如何在工程里面使用函數(shù)庫呢?我們提供了一個(gè)非常便捷的方法!我們拿STC8系列的ELL函數(shù)庫舉例,你只需要調(diào)用一個(gè)頭文件8051_ELL_Lib.h,和配置一個(gè)頭文件Lib_CFG.h。
通過配置Lib_CFG.h,可以實(shí)現(xiàn)對庫裁剪和控制,定制適合你工程的函數(shù)庫。而使用函數(shù)庫內(nèi)的API,只需要調(diào)用8051_ELL_Lib.h就可以了。 看到這里,如果你對本庫產(chǎn)生了興趣,可以通過下面下載:
本庫是開源項(xiàng)目,遵循 Apache 許可證 2.0 版本,可免費(fèi)在商業(yè)產(chǎn)品中使用,不需要公布應(yīng)用程序源碼,沒有潛在商業(yè)風(fēng)險(xiǎn)。
|