这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,但愿在每一个交节之日准时发布一期。html
本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,投稿或推荐你知道的嵌入式那些事儿。git
上期回顾 :《痞子衡嵌入式半月刊: 第 16 期》github
今天是寒露。寒露是一个反映气候变化特征的节气,是凉爽向寒冷的转折。算法
又是一年国庆中秋双节同庆8天长假,鉴于国外疫情状况,今年国内各大旅游胜地应该比往年要更加"热闹",痞子衡不喜欢凑热闹,所以在家宅了8天,没有旅途奔波,却是真正体验了个最轻松的长假。安全
本期共收录 4个项目,但愿对你有帮助!微信
znFAT是大神于振南维护的一套高效、完备、精简且具备高可移植性的嵌入式FAT32文件系统解决方案。并发
项目主页: https://gitee.com/dbembed/znfat框架
该项目的特性有:编辑器
- 与FAT32文件系统高度兼容,提供丰富文件操做函数,可实现文件与目录建立、打开、删除,数据的读取与写入等功能。 - 可方便地移植到多种嵌入式CPU平台上,如5一、STM3二、AVR、PIC、ColdFile、MSP430等。 - 占用RAM与ROM资源极少,并可由使用者视目标平台资源状况进行灵活配置,最小配置状况下,RAM的使用量约在800~900字节,最大配置下约为1300字节。 - 内建独特数据读写加速算法,以及多种工做模式,都可由用户自行配置,以知足不一样的速度与功能需求。 - 创新性提出数据写入的实时工做模式,可保证写入到磁盘文件中的数据安全。防止因恶劣工做环境、干扰或其它缘由引发的目标平台不可预见的死机或故障,形成数据丢失(实时模式数据写入速度不高,数据直接写入物理扇区,而不在RAM中暂存,并对文件数据进行实时维护)。 - 底层提供简单的单扇区读写驱动接口以及可选的硬件多扇区读、写、擦除驱动接口。(在提供硬件多扇区读、写、擦除驱动的状况下,磁盘格式化与数据读写速度将有近2~4倍的提高,甚至更高。) - 提供清晰而强大的功能模块裁剪功能,可极大程度减少最终生成的可执行文件的体积,节省ROM资源。 - 提供数据读取重定向功能,使读到的数据无需缓冲暂存,直接流向应用目的。
znFAT做者还为该项目专门写了一本书:函数
NorthFrame是基于非UML极简理念的状态机框架,配合NF_FsmDesigner图形化开发工具,可无负担替代传统switch-case状态机开发。
NorthFrame包含三个组件:
NF_FSM : 极简非UML状态机框架 NF_FsmDesigner : 基于C# Winform开发的状态机图形化开发工具,可直接生成C代码 NF_Signal : 用于代替全局变量的动态信号机制
建立一个在VS2012环境中运行的判断QE组合键的状态机例程仅需以下三步:
Step1 : 使用NF_FsmDesigner工具设计绘制状态转换图,并保存为XML文件 Step2 : 点击生成代码,生成C语言代码 Step3 : 在main.c文件中实现按键处理,并发送事件给状态机
MonoGUI是针对电子词典、高级计算器、电子手表、标签打印机、收款机、电子货签等 具备黑白屏幕的小电子设备开发的专用GUI系统。本系统具备结构简单、使用容易、内 存占用小、单线程、处理器负担轻等特色。虽然图形能力仅有黑与白,但其支持完整的 中文显示处理功能(GB18030中2字节汉字,即旧GB13000标准),其Edit控件和中文输 入法(包括九键输入法)功能上达到Windows和Android的输入法水平,且扩展容易。
MonoGUI使用纯C++编写,不依赖于第三方源码,便于移植和调试。配套的工具软件, 如图片转换器、对话框模板编辑器等,所有开源。设计资料完整,文档充实,也是一份 不可多得的研究资料。
OpenBLT是一个开源引导加载程序,能够在任何微控制器上运行并使用任何类型的通讯接口来执行软件更新,而无需专用的调试器硬件。
该项目的特色有:
- 用户友好的PC下载程序。 - 完整的源代码可用。 - 与STM32,XMC4,XCM1,Tricore,HCS12和其余基于ARM Cortex的微控制器一块儿使用。 - 易于移植到不一样的微控制器。 - 支持经常使用的通信接口,例如RS232,CAN,TCP / IP和USB。 - 支持从本地链接的存储设备(例如SD卡)进行软件更新。 - 可扩展以支持额外的存储器,例如串行EEPROM或外部闪存。 - 可扩展以支持用户定义的后门条目。
文章会同时发布到个人 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就能够在手机上第一时间看了哦。