最近收集的开源项目专栏(持续更新,收好车轮,方便造车)

简介: 最近收集的开源项目专栏(持续更新,收好车轮,方便造车)

640.png

经常在公众号这个菜单互动的小伙伴可能知道,最近我在这里偷偷加了一个开源项目的专栏,这个专栏主要是持续收集一些嵌入式方面的开源项目,当然也包括我自己开源的,目前已经更新了19个项目。

1 一个好用的量产集成测试工具

分享一个刚毕业的时候写的一个量产测试工具吧,采用的是C语言来编写,刚开始应用在Linux和Android平台上,后面通过移植也用在单片机上,使用起来也非常简单。


分享一个自己量产项目上的集成测试软件MTTEST

2 基于C标准库实现的键值对读写工具

ini 文件是Initialization File的缩写,即初始化文件,这是用来配置应用软件以实现不同用户的要求。


INI文件由节、键、值组成。一个简单的的INI文件例子如下:

[Setting]
INIT_FLAG=0;
VOLUME=1;
LANGUAGE=1;

分享一个好用的C语言.ini文件的解析库


基于小熊派SD卡+Fatfs+移植开源iniparse解析库并使用

3 两个好用的按键组件

在嵌入式系统或单片机程序开发过程中,经常会遇到各种按键的需求,比如按键短按、按键长按、按键双击,这些功能虽然不难,但想要完全写好这些功能并不简单。网上已经有大神实现了这样的组件,该组件的特性如下:


  • 使用时系统不阻塞
  • 低耦合性
  • 同一个按键可实现单击、双击、长按
  • 可根据按键线序更改,比如高电平触发或低电平触发


分享一个很好用的按键组件


第1期 | MultiButton,一个小巧简单易用的事件驱动型按键驱动模块


个人使用案例实现:


开源按键组件MultiButton支持菜单操作(事件驱动型)

4 两个好用且优雅的软件定时器框架

在一些项目里,我们要使用的定时器资源很多,假设硬件资源有限,那也不用愁,接下来将要介绍的是一个开源软件模块:MultiTimer


MultiTimer 是一个软件定时器扩展模块,可无限扩展你所需的定时器任务,取代传统的标志位判断方式, 更优雅更便捷地管理程序的时间触发时序。


分享一个简单易用的软件定时器模块


还有一个轻量级的软件定时器SmartTimer


SmartTimer是一个轻量级的基于STM32的定时器调度器,在单片机裸跑的情况下,可以很方便的实现异步编程。


开源项目SmartTimer


个人使用案例实现:


超轻量级网红软件定时器multi_timer(51+stm32双平台实战)


基于小熊派光强传感器BH1750实践(multi_timer+状态机工程应用)


基于小熊派光强传感器BH1750状态机驱动项目升级(带LCD屏显示)


基于小熊派WIFI-ESP8266实践(中)-多功能处理显示等大杂烩


基于小熊派气体传感器MQ-2综合实践

5 一个好用的SPI FLASH开源项目SFUD

SFUD 全称 Serial Flash Universal Driver,是一款开源的串行 SPI Flash 通用驱动库。


SFUD | 一个简洁实用的开源项目,帮你轻松搞定SPI Flash

6【开源】省资源、高稳定的MQTT客户端

这一个基于socket API之上的跨平台MQTT客户端,拥有非常简洁的API接口,以极少的资源实现QOS2的服务质量,并且无缝衔接了mbedtls加密库。


【开源】省资源、高稳定的MQTT客户端

7 超牛逼的高度可移植的菜单架构

今天给大家推荐一个非常不错的菜单架构,好朋友宋工写的,他把他认为最能拿得出手的东西贡献了出来,是一个挺不错的菜单架构,大家拿到源码,可以自己学习借鉴下。


完全由C编写,高度可移植,超级牛逼的菜单架构!

8 替代传统的打印调试printf

介绍另一种打印调试的方法——SEGGER 的RTT 。RTT全称是Real Time Transmit(实时传输),是Segger公司推出的,是配合J-link使用的一种调试手段。


替代串口打印,快来围观嵌入式中另一种打印调试的方法

9 专为MCU项目开发提速的代码框架Baby OS

BabyOS适用于MCU项目,是一套管理功能模块和外设驱动的框架。


对项目而言,缩短开发周期。项目开发时选择适用的功能模块及驱动。直接进入功能代码编写的阶段。


对工程师而言,减少重复工作。调试过的功能模块和驱动代码放入BabyOS中进行管理,以后项目可以直接使用,去掉重复调试的工作。


专为MCU项目开发提速的代码框架BabyOS

10 开源代码格式化工具Astyle

Astyle全称Artistic Style,是一个免费,快速,小型的自动格式化程序,适用于C,C++,C++/CLI,Objective‑C,C#和Java源代码。


分享一个在Keil开发环境中配置代码格式化工具Astyle(美化代码风格)

11 无线点菜宝

这是一款过时的,用STM32开发的一款手持类产品,虽然产品过时,但是技术并不过时,值得学习,目前产品已经断货了,但硬件和软件都开源。


开源STM32产品:无线点菜宝使用评测

12 常用的C语言经典测试学习案例

平时大家学习的一些C语言测试案例。


别瞎找了,你要的C语言经典示例都在这~

13 一个超轻量级的JSON解析器

众所周知,JSON是一种轻量级的数据格式,应用广泛。在C/C++应用中也常常作为配置文件或者数据的存储,因此JSON文件的生成和解析是必备知识。


一个超轻量级的JSON解析器

14 GitHub嵌入式高星开源项目

关于GitHub,可能很多人误以为这是互联网人的专属,其实并不是,那上面嵌入式相关的开源项目是有很多的。现分享一些高星开源项目(像RT-Thread、AWTK等大家都熟知的就不介绍了):


分享GitHub上一些嵌入式相关的高星开源项目

15 STM32F103产品级开源项目:iLook.Time

  • 2013年开始设计iTrack+yeelink,由于各种原因,该项目夭折。
  • 2014年年初开始提出面向产品的开源平台:iLook
  • 2015年5月发起iLook.爱路客
  • 2015年8月发起iLook.Time并开源

640.png

STM32F103产品级开源项目:iLook.Time设计解读

16 深圳云之手科技开源炫酷RGB灯板DIY项目

本文的RGB灯板是采用WS2812B的全彩灯,源码是采用SPI+DMA的方式驱动全彩灯,灯板要求的时序比较高,是微秒级别,本文所有延时均采用定时器处理,采用了合泰和STM32的MCU,目前本文选用的是STM32的STM32F103CBT6进行编写的处理,本项目纯属于娱乐时间开发的,最终展示效果:


深圳云之手科技开源炫酷RGB灯板DIY项目

17 华大开源火爆全网的额温枪方案(硬件+源码)

在疫情期间,涌现了不少为抗疫做贡献的企业,华大半导体有限公司就是其中一家,在国内额温枪紧缺的情况下,华大半导体就将自研的抗疫方案额温枪自主芯片、自主软、硬件,多热电堆匹配算法等额温枪方案资料开源共享,助力国内相关企业用开源的额温枪方案快速做出产品助力国内抗疫。现在,我们具体来看看开源了哪些东西:

640.png

分享一个近期开源火爆全网的额温枪方案(硬件+源码)

火爆全网开源额温枪同平台之华大HC32L136 SDK开发入门

18 云之手红外式测温计产品设计分享(基于合泰BH67F2752方案)

这次介绍的是深圳市云之手科技有限公司的测温产品,出自陈工之手,这也是他个人目前开源的第二个项目,也是个非常成功的项目,产品已经实现大批量产。


云之手红外式测温计产品设计分享(基于合泰BH67F2752方案)

19 WIFI DTU产品设计与实现(基于STM32F103+QT配置上位机案例设计分享)

使用 WIFI 模组,完成 DTU 的功能,就叫做 WIFI DTU,WIFI DTU 的实现难点在于配网以及后期多端口及多种协议和端口的适配。

640.png

640.png

WIFI DTU产品设计与实现(基于STM32F103+QT配置上位机案例设计分享)

我将会一直汇总下去,敬请期待!

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
STM32F103标准外设库——SysTick系统定时器(八)
STM32F103标准外设库——SysTick系统定时器(八)
1843 0
STM32F103标准外设库——SysTick系统定时器(八)
|
算法 计算机视觉
图像处理常用算法—6个算子 !!
图像处理常用算法—6个算子 !!
1173 2
|
JavaScript
npm install没问题,但npm run dev的时候报Node Sass version 6.0.1 is incompatible with ^4.0.0 ^5.0.0
npm install没问题,但npm run dev的时候报Node Sass version 6.0.1 is incompatible with ^4.0.0 ^5.0.0
209 0
|
4月前
|
JSON 自然语言处理 API
gRPC凭什么成为微服务通信首选?深度解析RPC进化史
本文深入解析了分布式系统中服务通信的核心机制,重点介绍了 RPC 与 gRPC 的原理、优势及使用场景,并详解 gRPC 所依赖的序列化协议 Protocol Buffers(Protobuf)。内容涵盖 RPC 概念、gRPC 特性、Protobuf 语法及服务定义,适合微服务架构设计与维护人员阅读,助你构建高性能、低耦合的服务通信体系。
653 73
gRPC凭什么成为微服务通信首选?深度解析RPC进化史
|
自然语言处理 搜索推荐 算法
gpt3模型训练数据量是多少?
【7月更文挑战第6天】gpt3模型训练数据量是多少?
2956 3
记录一次Linux服务器被人使用SSH字典爆破
曾经我以为互联网到至今应该是很和平的状态,但是经历了这次ssh字典爆破攻击后我才意识到网络攻击无处不在,建议系统密码使用比较复杂的随机字符组合,七八十位都没问题,数据可贵,电脑该装杀毒软件的就装上,别因为那占用那点内存而舍弃杀毒软件,防网络攻击于未然 !
|
存储 弹性计算 安全
2024年阿里云服务器2核2G和2核4G配置可选实例规格及收费标准与优惠价格参考
阿里云服务器2核2G和2核4G配置可选实例规格及价格是多少?根据阿里云2024年的收费标准及活动价格来看,2核2G配置轻量应用服务器的最优惠的价格是61元1年,云服务器2核2G配置的价格为99元1年,轻量应用服务器2核4G的价格为165元1年,通用算力型u1实例2核4G的价格为199元1年。不同实例的价格有所不同,下面是2核2G和2核4G配置可选实例规格详解及优惠价格参考。
2024年阿里云服务器2核2G和2核4G配置可选实例规格及收费标准与优惠价格参考
|
缓存 资源调度 JavaScript
秒懂Yarn:从安装到配置的全流程详解
**Yarn**是Facebook推出的JavaScript包管理器,旨在提供更快、更安全的依赖管理。它通过并行安装、离线模式、版本锁定和友好的命令行界面提升效率。要安装Yarn,可以使用npm、Homebrew或Chocolatey。基本命令包括初始化项目(`yarn init`)、安装/移除/升级依赖(`yarn add/remove/upgrade`)。配置Yarn涉及设置`.yarnrc`文件,如更改registry。通过`yarn.lock`文件保证依赖一致性。文章还提供了使用Yarn进行API测试和项目管理的实战案例。
722 0
|
测试技术 决策智能
专业智能体指导让小模型学会数学推理!微调Mistral-7B实现86.81%准确率
【5月更文挑战第13天】Orca-Math研究展示如何用小模型解决小学数学题,通过70亿参数的SLM在GSM8K基准测试上达到86.81%准确率。采用合成数据集和迭代学习技术,包括多智能体协作创建问题集及“偏好学习”优化解决方案。虽优于其他大、小模型,但可能不适用于复杂数学问题,且依赖高质量合成数据集的创建。[论文链接](https://arxiv.org/abs/2402.14830)
372 4