# old-mcs51-ell **Repository Path**: gevico/old-code ## Basic Information - **Project Name**: old-mcs51-ell - **Description**: 这是一个专门为增强型 1T-8051 内核 MCU 设计的硬件抽象平台。新版本已放到格维开源社区下孵化。 - **Primary Language**: C - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://zewen-i.github.io/8051-ELL-WEB/#/ - **GVP Project**: No ## Statistics - **Stars**: 189 - **Forks**: 55 - **Created**: 2020-09-11 - **Last Updated**: 2025-06-03 ## Categories & Tags **Categories**: hardware **Tags**: None ## README # 8051-ELL 库简介 [**8051-ELL官网**](https://open-ell.gitee.io/home/#/) [**全新的API文档中心**](https://8051-ell-api.vercel.app/index.html) [**ELL-知识星球**](https://t.zsxq.com/YBEQF6y) [![](https://img.shields.io/badge/version-1.1.6-green)](https://github.com/zewen-i/8051-ELL-LIB) star fork # 重要说明:本仓库为ELL旧仓,已停止维护,[最新版请点击此处跳转](https://gitee.com/open-ell/code) 8051-ELL库,是根据新一代增强型8051为内核的MCU,基于keil开发的硬件抽象平台。ELL库充分考虑8051的特性,结合硬件条件,提供大量标准的API函数,供开发者访问底层硬件细节。并且函数库的大小可裁剪,在代码密度和执行效率上做到了很好的平衡。 ELL是`efficient low-layer`的缩写,意思是`高效低封装`,结合了`HAL库`和`LL库`的编程思想,既保证了通用性又降低了flash的过度占用。可谓是一举两得,高效、简洁、好用! 8051-ELL库支持Keil4和Keil5,支持Vscode协同开发,推荐使用EIDE插件。目前ELL库主要适配了STC公司的单片机型号,以STC8系列为主。后续计划增加STC12、STC15、STC16系列。 函数库遵循 Apache 许可证 2.0 版本,可免费在商业产品中使用,不需要公布应用程序源码,没有潜在商业风险。 大家觉得好用的话,记得给个`Star`,我想上自荐!!!! **** 当前版本为:`1.1.6.20210711` 作者微信:ze_wenu B站账号:泽文i QQ技术支持群:` 1001220381` **** ## 新手如何入门 进入 [**8051-ELL官网**](https://8051-ell-web.vercel.app/#/) 可查看 [**入门教程**](https://8051-ell-web.vercel.app/#/zh-cn/start/start) 。 函数库采用了一个裸机框架来组织库文件。框架包括两大部分:`工程文件`和`库文件`。 工程文件主要存放`Keil工程`、`Vscode文件`、`用户代码`。这里可以根据你的编程习惯进行安排,非常的自由!库文件才是我们的重头戏,它主要分为四个部分:`核心文件夹`、`片内外设库`、`组件库`、`设备驱动库`。 ### ELL库目录结构 | 一级目录 | 二级目录 | 描述 | | :-------: | :---------: | :-----------------: | | doc | ... | 一些文档资料 | | examples | | 示例工程 | | | STC8Ax | STC8A系列的示例代码 | | | STC8Cx | STC8C系列的示例代码 | | | ... | 其他型号 | | libraries | | ELL库文件 | | | core | 寄存器和启动文件 | | | components | 组件库 | | | peripherals | 芯片的片内外设库 | | | drives | 设备驱动库 | | project | | 模板工程 | | | STC8Ax | STC8A系列的模板工程 | | | STC8Cx | STC8C系列的模板工程 | | | ... | 其他型号 | 下面是ELL库的框架图: ![img](doc/image/8051-ELL-FrameWork.png) 整个固件库,充分利用了keil的一些特性,比如使用LX51扩展链接器/定位器,优化了BL51的功能,可以生成更小的目标文件等。 **** # 支持的型号及外设 > `√`代表已经支持、`空`代表MCU没有这个外设、 ` X`代表还没有适配 ### STC8系列 部分型号可能有所差异,详情可查看官方数据手册。 | 型号 | 定时器 | IO | 中断 | 系统时钟 | PCA | PWM | MPWM | HPWM | EEPROM | ADC | MDU16 | 比较器 | USB | LED | RTC | TKEY | | --------- | ----- | ---- | ---- | -------- | ---- | ---- | ---- | ------ | ---- | ----- | ------ | ---- | ---- | ---- | ---- | ---- | | STC8A系列 | √ | √ | √ | √ | √ | √ | X | X | √ | √ | | √ | | | | | | STC8C系列 | √ | √ | √ | √ | | | | | √ | | √ | √ | | | | | | STC8F系列 | √ | √ | √ | √ | | | | | √ | | | √ | | | | | | STC8G系列 | √ | √ | √ | √ | √ | | X | | √ | √ | √ | √ | X | X | | | | STC8H系列 | √ | √ | √ | √ | | | | X | √ | √ | √ | √ | X | X | X | X | # 技术交流群 欢迎加群,在这里可以帮你解决学习ELL库遇到的问题。 >