吃了这个开源小玩意让单片机开发和Arduino一样高效

2022-04-21     大方老师单片机

原标题:吃了这个开源小玩意让单片机开发和Arduino一样高效

吃了这个开源小玩意,让单片机开发Arduino一样高效全中文注释

无论你是一个单片机新手,或者是一位电 DIY的爱好者,还是说是对嵌入式开发感兴趣的工程师,今天这个开源项目值得你看下去。

///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免费的,私信我就可以~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比///

正文开始:

ECBM是什么?

ECBM,是基 STC8单片机的外设函数库,同时它也Everything Can Be Module(一切都可以模块化的简称。

项目作者曾在自己的个人平台上说过,他认为无论软件、硬件都可以模块化,且只需要造一次轮子2017年起,他根据模块化的设计理念,提出建立一个模块的+硬产品,如果某日想要判今天家里为何很时,可以根据湿度模+ CO2+主控分析原因。

此后,作者学习了各个单片机大厂的官方库,理解软件的程序结构,选取合适的载体。经过实践,作者发现单片机官方库一般可分为两类:一类是是DIY爱好者编写简单封装成函数,用到什么写什么,风格混乱易冲突,没有一个好的体系;另外一类则是由工程师编写的,虽然有很好的框架,但是由于英文注释、英文文档及复杂的文件结构和代码规则等让新手望而却步

抱着别的产品不符需求,就自己造轮子的想法ECBM诞生了,经过几年的技术迭代,目前,该项目已经发行 V3版本。

特点

· C语言,按统一风格编写

· KEIL特性,能够适用图形化编辑工具

·代码运行速度提升,大数据

·支持多器件复用,任 IO都可驱动

·全中文注释,符合国人习惯

·代码增加可剪裁,能装进型号更小的单片机

·当前支 STC8全系列单片机

前期准备

使用之前需要确保软件、程序都下载安装完毕,具体链接可找我。

操作流程

新建

双击新建工.bat,新test工程

ecbm_test文件夹,打 ecbm.uvproj,开始编程

注意:在界面下输入英文或拼音,Keil对中文支持度低,不建议在此出现中文字符

设计正确的单片机型号

STC8系列目前FAGHC这几个系列,他们8051寄存器都是一致的,但是扩8051能寄存器却是有所差别,因此单片机型号一定要设置正确,才能访问正确的寄存器。

方法: Keil左侧 LIB_LIST下找 ecbm_reg.h,双击打ecbm_reg.h。然后在窗口的左下角 Configuration Wizard标签进入图形化配置界面

为何STC8单片机?

·库要求要有通用性,为了保证通用性就不能为了运行速度而优化。这就要求使用一款运行速度快51单片机。

·STC8在整型计算略低stm32f030(同等运行频率下),在浮点计算中略高stm32f030(也是同等运行频率下)。

设置时钟参数

ecbm_core.h,进入图形化配置界面。在【单片机系统时钟】下的【单片机系统时钟设置】选择所需选项。

譬如:作者使用的 STC8A8K64D4 STC-ISP中设置 40MHz的频率,由于超过 30MHz且我的应用是刷一定需要高频率工作。所以我选内部高速时 HSI(自定),先节省几百字节空间,然后填写频 40000000

如图所示:

文件结构

文章来源: https://twgreatdaily.com/zh-hans/90c5cb5f31dd487c4b37a17b3c0d44d9.html