嵌入式相关开源项目、库、资料

2023-11-04

学习初期最难找的就是找学习资料了,本文精心汇总了一些嵌入式相关资源,包括但不限于编程语言、单片机、开源项目、物联网、操作系统、Linux、计算机等资源,并且在不断地更新中,致力于打造全网最全的嵌入式资料库。

以下为最新资料汇总:

github:GitHub - KemGong/EmbedSummary

目录

1、OS

2、实用库 / 框架

3、GUI相关

4、项目 / 软硬结合

5、资源 / 工具 / 网站 / 论坛

6、一些芯片原厂代码仓库

7、物联网、智能家居

8、机器人相关 / 定位 / 视觉

9、推荐博客 / 博文


1、OS

鸿蒙OS: 一款面向全场景的开源分布式操作系统。

RT-Thread:一款小而美的物联网操作系统。

TencentOS tiny:一款面向物联网领域开发的实时操作系统。

freertos: 一个轻量级的操作系统。

µC/OS :一个功能齐全的嵌入式操作系统。

Azure RTOS:Azure RTOS 是一个嵌入式开发套件。

eventos-nano:一个超轻量级嵌入式开发框架,事件驱动,占用资源小,可运用于各型单片机。

zephyr:Zephyr 是 Linux 基金会推出的一个适用于物联网的小型可伸缩的实时操作系统。

mbed-os :ARM自己打造、主打IoT的一整套软件解决方案 。

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

LuatOS : LuatOS是运行在嵌入式硬件的实时操作系统,只需要少量内存的flash空间就能运行,用户编写lua代码就可完成各种功能。

Contiki-OS: 一个小型的,开源的,极易移植的多任务操作系统。

DJYOS: 都江堰操作系统。

klite : 简洁易用的嵌入式操作系统内核。

lmosem : 一个完全从第一行引导代码开始编写,基于ARM平台,支持多进程、多CPU、内存管理、文件与设备管理的全32位操作系统内核。

freenos:FreeNOS微内核操作系统。

ros:机器人操作系统。

openwrt:openwrt文档。

cola_os:300行代码实现多任务管理的OS。

MS-RTOS: Micro Safe RTOS 。

更多资源敬请期待......

2、实用库 / 框架

ametalametal:AMetal是芯片级的裸机软件包,定义了跨平台的通用接口。

Melon:一个用于简化开发的 C 框架库。

zlog:一个高可靠性、高性能、纯C日志函数库。

EasyLogger:一款超轻量级、高性能的 C/C++ 日志库。

Smartlink:Linux上实现的smartconfig。

airkissOpen :腾讯airkiss协议解析库 。

CodeBrick:一种无OS的MCU实用软件管理系统。

RIL:一款专门为嵌入式平台开发的无线通信模块(GSM/GPRS/CatM1/NB)管理框架。

cJSON:一个基于C语言的轻量级的JSON解析库。

jsmn:一个小巧的基于C语言的JSON解析库。

inih: C 语言编写的 INI 文件解析器。

MultiTimer : 一个软件定时器扩展模块。

MultiButton: 一个小巧简单易用的事件驱动型按键驱动模块。

SmartTimer : 一个轻量级的基于STM32的定时器调度器 。

FlexibleButton:一个基于标准 C 语言的小巧灵活的按键处理库。

CmBacktrace : 一款针对 ARM Cortex-M 系列 MCU 的错误代码自动追踪库。

EasyLogger:一款超轻量级、高性能的 C/C++ 日志库。

limlog :一款超轻量级、高性能的 C/C++ 日志库。

NanoLog :一款超轻量级、高性能的 C/C++ 日志库。

EasyFlash:一款开源的轻量级嵌入式Flash存储器库 。

SFUD:一款开源的串行 SPI Flash 通用驱动库。

lw_oopc:轻量级的C语言面向对象编程框架。

PLOOC:受保护的低开销面向对象编程。

cmd-parser:一个非常简单好用的命令解析器。

mqttclient:一个省资源、高稳定的MQTT客户端。

NorthFrame :一个单片机极简图形化状态机框架 。

letter-shell:一个功能强大的嵌入式shell。

nr_micro_shell : shell for MCU,单片机命令行交互。

pigweed:谷歌开源的嵌入式目标库(模块)集合。

lwrb:一个轻量级通用环缓冲区管理器库。

cQueue :使用ANSI C 编写的消息队列功能函数。

Unity:一个轻量级的、适合嵌入式的测试框架。

Embedded Unit: 是个纯标准c构建的单元测试框架。

CuTest :一款微小的C语言单元测试框, 全部代码加起来不到一千行。

cmockery: 谷歌C单元测试框架。

googletest:谷歌C++测试框架。

znfat :振南fat,国产嵌入式文件系统方案 。

libu:一个C语言写的多平台工具库。

tbox:一个用c语言实现的跨平台开发库。

toolkit:ToolKit是一套应用于嵌入式系统的通用工具包。

LWIP: 一个小型开源的TCP/IP协议栈 。

SQLite :一个开源的嵌入式关系数据库。

OpenBLT:一种开源引导加载程序。

Linux Lab : Linux 内核实验室,基于 Docker/Qemu 的极速 Linux 内核学习、开发和测试环境。

airkissOpen :腾讯airkiss协议解析库 。

mbedtls :一个开源、便携,易于使用,可读的和灵活的SSL库。

mosquittomosquitto(下载速度快):一个开源的MQTT代理。

inih:C 语言编写的 INI 文件解析器。

QP:QP实时嵌入式框架。

MS-RTOS:Micro Safe RTOS 。

protobuf-c:protobuf-c。

eepromfs: 基于EEPROM的简易类文件的数据读写库 。

gear-lib : 适用于IOT/嵌入式/网络服务开发的C库 。

mult_timer : 一个Linux下的超级精简的多重定时器 。

EFSM : 是一个基于事件驱动的有限状态机 。

EasyX:一个免费的图形库。

tbox:一个用c语言实现的跨平台开发库。

sys/queue.h:用宏实现的常用数据结构。

nanomsg:一个实现了几种“可扩展协议”的高性能通信库。

thttpd:一个简单,小型,可移植,快速且安全的HTTP服务器。

boa:一个小巧高效的web服务器。

FreeTpye :字体渲染库。

qpc :一个开源的状态机实现。

Quantum Leaps :状态机组织。

ZBar :二维码扫描工具和开发包.

FFmpeg :多媒体处理工具库.

libnabo :是一个快速为低维度空间提供K最近邻居算法库。

DSAL:是一个经典的数据结构和算法库。

FLINT :是一个数论库,用C语言编写,它包括一个非常快的多项式算法库。

LibMMSeg:中文分词软件包 。

CDS:CDS是一个 C++ 模板库,包含 lock-free and fine-grained 算法。

hashlib++:是一个简单易用的用来生成 checksum 算法。

libcstl:C语言编写的一个通用的数据结构和常用的算法库。

Botan:Botan 是一个 C++ 的加密算法库。

CGAL:计算几何算法库。

MyMediaLite:是一个轻量级的多用途的推荐系统的算法库。

cblas:提供c接口的blas库,源码通过f2c转换为C语言。f2c官网。

clapack:提供c接口的lapack库,源码通过f2c转换为C语言。

scalapack:提供并行运算的lapack库,源码用fortran编写。

armadillo:线性代数运算库,源码用c++编写。

openblas:针对intel cpu优化的blas库。

mkl:扩展的且针对intel cpu优化的库,包括快速傅立叶变换(FFT)、矢量数学库。

eigen:C++写的线性代数运算库。

libjpeg:用libjpeg库在LCD上显示图片。

x264:x264开源的解码编码库。

ws2812:ws2812驱动库。

更多资源敬请期待......

3、GUI相关

GuiLite:大道至简 - 5千行/仅头文件/全平台GUI库 。

yoxios: 基于Linux开发的轻量级物联网系统和硬件平台。

ToughGFX: 一个C++编写的GUI软件框架 。

emwin:一个老牌GUI库。

littlevGL : 一个免费的开源图形库。

野牛 LittlevGL demo:基于野牛开发板的 LittlevGL demo 程序 。

MonoGUI :一个黑白图形用户接口系统 。

MiniGUI: 一个快速、稳定、跨操作系统的GUI。

QT:跨平台的应用程序和用户界面框架。

QT_Creator:QT_Creator下载链接。

Gtk: 一个用于创造图形用户接口的图形库。

AWTK:是 ZLG 倾心打造的一套基于 C 语言开发的 GUI 框架 。

玲珑GUI:玲珑GUI教程页。

std :一个嵌入式小型图形库。

CUGUI:为单片机写的GUI ,支持字体,按键,图片,滑动条。

更多资源敬请期待......

4、项目 / 软硬结合

ElectronBot:一个桌面级小机器人。

Planck-Pi:超迷你Linux开发板。

qt_2019_ncov:基于Qt/C++实现的新冠肺炎疫情监控平台。

H7-TOOL_STM32H7_App :安富莱H7-TOOL 多功能开发工具。

the-little-bili-tv:基于esp32+lvgl8.0的哔哩哔哩小电视。

DAPLink/CMSIS DAP:一个调试器, 集成下载、调试和USB虚拟串口。

Crazepony:Crazepony开源四轴飞行器。

MiniQ :一个迷你四轴飞行器。

LiPow-Firmware:基于STM32G0采用USB type-C供电的开源锂电池充电器。

Avem: 一个轻量级无人机飞控。

esp8266-lattice-clock:Esp8266多功能点阵时钟。

SoftWareSerial:一个STM32 IO口模拟实现软件串口程序。

串口ISP程序:一个stm32串口ISP程序。

DSO_Nano :一个手持示波器。

DSView: 一个跨平台的逻辑分析仪。

MCU-Development: 基于51、430、STM32F10X、STM32F407X、T4MC123G平台的各常见硬件模块demo。

Arduino : 开源电子原型平台。

EWAHBoolArray: bitmap算法。

mcush:MCU shell。

DoST: Linux 下开发 STM32 。

Avem : 这是一个轻量级无人机飞控项目。

更多资源敬请期待......

5、资源 / 工具 / 网站 / 论坛

100ask download:百文网资料下载中心。

armfly:安富莱/硬汉嵌入式论坛。

fire download:野火资料下载中心。

openedv download:正点原子资料下载中心。

野火:野火电子论坛。

正点:正点原子论坛。

小熊猫C++ IDE:跨平台、轻量易用的开源C/C++集成开发环境。

ST:ST中文社区。

讯为开发社区:北京讯为ARM开发社区。

讯为官网:讯为官网。

NXP社区:恩智浦论坛。

Linux:Linux内核官网。

Linux源码:可在线阅读Linux内核源码。

Buildroot:buildroot源码。

Debian:Debian官网。

Ubuntu:Ubuntu官网。

BOA官网:一个单任务 web 服务器 ,可以移植到嵌入式平台。

荔枝派:荔枝派指南。

清华镜像站:清华大学开源软件镜像站。

中科大镜像站:中国科技大学镜像站。

u-boot:u-boot源码下载页面。

bear-pi:小熊派demo。

宅学部落:一个Linux、编程语言、内核、驱动开发学习网站。

单片机教程网:单片机基础、设计实例、论坛。

GNU:GNU官网。

ChinaUnix:Linux/Unix相关。

PyQt5:PyQt5教程。

qter:QT开源社区。

git手册:git学习手册。

开源项目风格:Google 开源项目风格指南 (中文版)。

电子世家:一个电子类导航网站。

21ic:21IC中国电子网。

芯路恒电子:小梅哥博客、FPGA论坛。

嵌入式开发者社区:创龙论坛。

micropython:micropython中文网。

泰晓科技:Linux相关。

电堂科技:STM32相关。

源代码使用示例聚合器: 从超过100万个开源项目搜索CPP代码示例。

KST-51 :《手把手教你学51单片机》 。

原子哥:专注电子技术教学。。

digoboy:地瓜派视频网。

c.biancheng:C语言中文网。

open-c-book :《C语言编程透视》。

PyQt5:PyQt5在线教程。

open-shell-book:《Shell 编程范例》 。

software_unit_test: 《软件单元测试入门与实践》。

kerneltravel:Linux内核之旅。

蜗窝科技:慢下来,享受技术。

bookstack:书栈网。

wireshark:抓包工具下载链接。

MobaXterm:一个好用的终端软件。

Stduino: 一款面向32位处理器快速入门学习的集成开发平台 。

easyicon:一个免费图标下载网站。

codingdict:一个类似于菜鸟教程的编程类教程网站。

codingdict开源软件:codingdict网站收集的各类开源软件集合。

C经典示例:一些C语言的实例。

xmake:轻量级跨平台C/C++构建工具。

spacevim:一个模块化的 Vim IDE。

vofa+:一个插件驱动的高自由度上位机。

联合开发网:356万个编程源码资料

觅思文档:私有云笔记、云文档和知识库系统。

aardio:易用性极强的动态语言。

OneNET SDK:OneNET SDK仓库。

ros手册:ros的官方手册。

gnu的开源软件:gnu的开源软件

soft-and-hard:这是一个以物联网项目为主方向分享web开发教程。

FireflyTeam :一个开放源代码的仓库。

python脚本:一些好用的python脚本。

C++ libraries:A list of open source C++ libraries.

Lindenis:An open source software for Lindenis SBC。

fast-line-following:一个快速寻线机器人的算法。

深度神经网络可视化工具:深度神经网络可视化工具。

Awesome-Embedded :汇聚了各种嵌入式相关的资源。

FreeModbus : FreeModbus是一款开源的Modbus协议栈,但是只有从机开源。

更多资源敬请期待......

6、一些芯片原厂代码仓库

STMicroelectronics:意法半导体(ST)。

TI:德州仪器(TI)。

NXP:恩智浦(NXP)。

Freescale:飞思卡尔半导体(Freescale)。

hisilicon:海思。

rockchip:瑞芯微。

Samsung:三星。

Infineon:英飞凌。

analogdevicesinc:亚德诺半导体(ADI)。

MicrochipTech:微芯半导体(Microchip )。

NordicSemiconductor:北欧集成电路(Nordic)。

cypress-io:赛普拉斯半导体(Cypress)。

GD32:易兆创新(GD)。

GD32网盘::易兆创新(GD)网盘资料。

更多资源敬请期待......

7、物联网、智能家居

Domoticz :一个开源的智能家居系统 。

Kaa IoT Platform:功能丰富的开放和高效的物联网云平台。

RT-Thread IoT SDK :基于RT-Thread IOT开发板的各类例程。

从零打造物联网:一份适合嵌入式开发人员学习的web开发教程。

更多资源敬请期待......

8、机器人相关 / 定位 / 视觉

RoboCar:机器人自动寻线、避障、建图、导航、遥控版本/车载电脑版本路面分析,及交通路况识别的车辆辅助驾驶系统

ROS教程:机器人操作系统

slam:思岚科技。

9、推荐博客 / 博文

嵌入式大杂烩周记 | 第 11 期 aardio

嵌入式大杂烩周记 | 第 10 期 inih

嵌入式大杂烩周记 | 第 9 期 nanopb

嵌入式大杂烩周记 | 第 8 期 AMetal

嵌入式大杂烩周记 | 第 7 期 zlog

嵌入式大杂烩周记 | 第 6 期 FlexibleButton

嵌入式大杂烩周记 | 第 5 期 smartlink

嵌入式大杂烩周记 | 第 4 期 cola_os

嵌入式大杂烩周记 | 第 3 期 sys/queue.h

嵌入式大杂烩周记 | 第 2 期 llgui

嵌入式大杂烩周记 | 第 1 期 gear-lib

博文——Tslib移植与分析

博主——ychy

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌入式相关开源项目、库、资料 的相关文章

  • 结构体内存对齐及结构体大小计算,位域计算

    1 什么是结构体内存对齐 结构体内存对齐是指在编程语言中 为了提高内存访问效率和性能 将结构体的成员按照特定规则进行排列 保证每个成员在内存中的起始地址符合特定的对齐要求 2 为什么要结构体内存对齐 网上的文章都是说这两个原因 1 平台原因
  • C++——指针作为参数传递

    C 指针作为参数传递 在写这一篇之前 受到了两个博主两篇博文 博文1 博文2 的启发 对指针作为参数传递时 有了很大的启发 所以在看完之后并把自己的感悟写出来 对于指针的变化作了更详细的讲解 1 指针作为参数传递时 是值传递不是引用传递 2
  • 设置ipv4固定ip

    选择 打开 网络和Intemet 设置 点击进入之后 选择 更改适配器选项 选择需要设置的网络 右击选择 属性 选择 Interent协议版本4 TCP IPv4 选择 属性 cmd输入ipconfig查看当前的IP信息 选择 使用下面IP
  • shinblink HX711称重/形变/压力测量

    HX711称重 形变 压力测量 一 本例程实现功能 二 基本概念 三 接线图 五 完整代码 六 代码运行结果 一 本例程实现功能 Core通过HX711差分电压采集模块测量电桥式传感器输出的差分电压AD值 并通过print 函数在电脑串口调

随机推荐

  • SQLi LABS Less 26a 联合注入+布尔盲注

    第26a关是单引号 括号的字符型注入 后台过滤了关键字 and or 注释 空格 这篇文章提供联合注入 布尔盲注 两种解题方式 SQLi LABS其他关卡可以参考 SQLi LABS 靶场通关教程 一 功能分析 这关是一个查询功能 地址栏输
  • 多播路由技术

    什么是多播转发树 用图论术语描述从特定源节点到多播组的所有成员的一组路径 这些路径定义了图论中的树 tree 是不含任何回路的图 即一个路由器不会在一条路径上出现两次或两次以上 有时也称为转发树 每个多播路由器对应于树中的一个结点 连接两个
  • LeetCode 1603. 设计停车系统

    题目链接 1603 设计停车系统 class ParkingSystem public vector
  • 九、UI系统

    目录 血条 Health Bar 的预制设计 设计过程 1 使用 IMGUI 2 使用 UGUI 两种实现的优缺点 IMGUI UGUI 效果展示 血条 Health Bar 的预制设计 血条 Health Bar 的预制设计 具体要求如下
  • Azure RTOS定价(ThreadX 等)

    Azure RTOS定价 Azure RTOS定价 https azure microsoft com zh cn pricing details rtos 使嵌入式 IoT 开发和连接变得轻松 Azure RTOS 是一种易于使用 经过市
  • 史上最简单详细的Hadoop完全分布式集群搭建

    一 安装虚拟机环境 Vmware12中文官方版 链接 https pan baidu com s 1IGKVfaOtcFMFXNLHUQp41w 提取码 6rep 激活秘钥 MA491 6NL5Q AZAM0 ZH0N2 AAJ5A 这个安
  • Kettle实例-数据检验-数据规范化处理

    1 使用Kettle工具 创建一个转换data validation 并添加 自定义常量数据 控件 计算器 控件 数据检验 控件 空操作 控件以及Hop跳连接线 2 双击 自定义常量数据 控件 进入 自定义常量数据 界面配置实验用数据 单击
  • Ubuntu-安装JDK

    1 检查安装JDK没有 java version 如果你看到像下面的输出 这就意味着你并没有安装过Java The program java can be found in the following packages default jr
  • centos7开启ssh 22端口

    查看是否安装ssh rpm qa grep ssh yum install openssh server 安装ssh 开启ssh service sshd start netstat ntpl grep 22 查看端口是否打开 设置自动开启
  • CSS样式--盒模型(四)

    CSS样式 盒模型 四 前言 css盒模型是创建css布局基础 其中最主要的就是padding和margin了 盒模型图解如下 可通过谷歌浏览器的调试工具查看元素的盒模型 鼠标悬浮上去可查看对应的padding border等值 框属性 1
  • 质数判断程序

    include
  • Spring Framework研究(一)RESTFUL

    前言 参考文档 Spring Framework Reference Documentation http docs spring io spring docs 3 2 x spring framework reference html s
  • 【漏洞复现】通达OA前台任意用户登录漏洞

    漏洞简介 通达OA Office Anywhere网络智能办公系统 是中国通达公司的一套协同办公自动化软件 通达OA lt 11 5 200417存在一个认证绕过漏洞 利用该漏洞可以实现任意用户登录 攻击者可以通过构造恶意攻击代码 成功登录
  • vs2017无法打开“stdio.h”等源文件!

    因为系统重装了 vs不得不重新安装 不得不说简直就是残忍啊 最后差点砸电脑 心态都崩了 一个简单的helloworld 保留四百多个错误 简直就是残忍 网上找了很多教程 都是单独下载 然后配置环境什么的 越看越懵越看越不知道问题出在哪里 先
  • 进公司能不能转正,简单,就看能不能做事

    前几天听同事 他是应用组领导 讲到看一个人在工作上行不行 很简单 就看他能不能做事 感受 在换工作后 进入新公司 领导会给你任务 当然这得碰运气 运气好或许遇到的任务简单 或许是你以前做过的 很快就做完了 这样 你在3个月内也做不少事 而且
  • 面向对象的封装和继承

    封装 封装的概念 将类的某些信息隐藏在类内部 不允许外部程序直接访问 而是通过该类提供的方法来实现对隐藏信息的操作和访问 把尽可能多的东西藏起来 对外提供便捷的接口 封装的作用 便于使用者正确使用系统 防止错误修改属性 有助于系统之间的松耦
  • vue封装自己的组件库 02.封装dialog组件

    link https blog csdn net weixiaowei 2016 article details 104702793 四 封装一个element ui风格的dialog组件 前置知识 vue过渡动画 sync修饰符 具名插槽
  • linux集群高可用--crm

    一 高可用集群介绍 入门 http blog csdn net tjiyu article details 52643096 高可用集群的概念 非常重要 需要重点理解 什么是高可用集群 高可用集群 High Availability Clu
  • PCIE金手指各个引脚的定义及设计建议,避免入坑!

    最近在做一个PCIE转网口的项目 具体框图如下 SOC这边的板子是我们自己开发的 但是无法满足输出四个网口的需求 就想到了用PCIE2 0进行转接 右侧的网口扩展板是外购的 刚好满足PCIE2 0接口 并输出四路网口 于是采用了此架构进行设
  • 嵌入式相关开源项目、库、资料

    学习初期最难找的就是找学习资料了 本文精心汇总了一些嵌入式相关资源 包括但不限于编程语言 单片机 开源项目 物联网 操作系统 Linux 计算机等资源 并且在不断地更新中 致力于打造全网最全的嵌入式资料库 以下为最新资料汇总 github