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

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

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一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
3月前
|
安全 架构师 Java
理论实战源码齐飞!架构师社区疯传的SpringSecurity进阶小册真香
安全管理是Java应用开发中无法避免的问题,随着Spring Boot和微服务的流行,Spring Security受到越来越多Java开发者的重视,究其原因,还是沾了微服务的光。作为Spring家族中的一员,其在和Spring家族中的其他产品如SpringBoot、Spring Cloud等进行整合时,是拥有众多同类型框架无可比拟的优势的。
55 0
|
6天前
|
负载均衡 Kubernetes 数据库
【鹅厂摸鱼日记(一)】(工作篇)认识八大技术架构
【鹅厂摸鱼日记(一)】(工作篇)认识八大技术架构
|
3月前
|
消息中间件 缓存 算法
太全!不愧是Github爆火的阿里812页高并系统设计核心技术全解
某乎上有这样一个问答:现在好点的互联网公司招聘基本都要求有高并发经验,但没有高并发的经验的人感觉只有在好点的互联网才获得高并发经验,这难道不是死循环?没有高并发经验的人如何才能获取高并发方面的经验呢? 如何获取高并发经验? 其实并不是去了大公司就能获得高并发的经验,高并发只是一个结果,并不是过程。在来自全人类的高并发访问面前,一切都有可能发生,所以我们经常能看到顶级网站的颤抖。想要获得高并发经验基础最重要,这包括算法,操作系统,jvm,数据库,缓存,多线程等等。这些独立而又关联的知识其实书本里都有,我们需要时不时地去温习,不能一直痴迷于框架,框架只会挡住你的眼睛,让你觉得什么都不重要。大并发
|
7月前
|
前端开发 JavaScript 小程序
预备金九银十,这套前端面试小册阁下请收好
预备金九银十,这套前端面试小册阁下请收好
56 0
|
9月前
|
设计模式 算法 NoSQL
冲刺金九银十!GitHub中文社区秋招趋势最热的面试题被我整理好了
面对已经过去的金三银四很多小伙伴都受到了很大的挫折! 最近收到一个小伙伴金三银四在阿里的面试流程完全被吊打,和我一起看看阿里都问了什么吧!
|
9月前
|
缓存 NoSQL Dubbo
太牛了!腾讯T9耗时69天整理出最全架构师进阶核心知识点笔记
每一个程序员应该都想着如何快速提升自己(反正我是这样想的),从程序员进阶到架构师再到技术专家再到CTO 。当然这其中需要大量的知识储备,是一个不断学习的过程,话不多说下面我直接上图。
|
10月前
|
SQL 关系型数据库 MySQL
吹爆!阿里专家手码“数据库优化速成小册”Github现已疯传
现在在很多设计、开发、测试人员的眼中会认为SQL优化只是DBA 的事情。他们不需要去关心。反映到具体工作中,他们缺乏相应的优化意识,只注重功能的实现而忽略了相应的执行成本。最终的结果往往就是代码质量不高,软件上线后问题多。
|
JavaScript API 开发工具
自己的开源项目被尤雨溪写进演讲稿是一种什么体验?
他开发的Varlet组件库被尤大在 Vue.js Live Conference 2021 上点名表扬
369 0
自己的开源项目被尤雨溪写进演讲稿是一种什么体验?
100个⼩时整理的OKR实战笔记,拿⾛不谢!
PDF文件下载链接: https://pan.baidu.com/s/1wZpNMANjZyQYzB4CfUEr6w 提取码: krjv
100个⼩时整理的OKR实战笔记,拿⾛不谢!
|
Web App开发 存储 搜索推荐
PyHubWeekly | 第十二期:Python数据分析师不可错过的优质项目
PyHubWeekly每周定期更新,精选GitHub上优质的Python项目/小工具。 我把PyHubWeekly托管到了Github,感兴趣的可以搜索Github项目PyHubWeekly[1],如果喜欢,麻烦给个Star支持一下吧。此外,欢迎大家通过提交issue来投稿和推荐自己的项目~
PyHubWeekly | 第十二期:Python数据分析师不可错过的优质项目

热门文章

最新文章