单片机资源汇整

作者

QQ群:852283276
微信:arm80x86
微信公众号:青儿创客基地
B站:主页 https://space.bilibili.com/208826118

单片机开源项目

  1. 开源逆变器
  2. 网友 aziddy 的一个开源作品,基于经典的 Adafruit Feather 328P 开发板(MCU主控是微芯公司的ATmega328P) 和 128x64 OLED 屏的mini电子游戏机。
  3. PIKOCUBE是一个非常有趣的项目,它是个可编程骰子,带有 54 颗 LED、陀螺仪,支持 WiFi 控制。项目所有资料都是公开的,包含PCB图纸,结构设计,Arduino 代码,上位机端App。由一个 ESP8285-01F、六块 PCB 和 54 颗 LED 组成。其结构设计十分巧妙,在制作的过程中也处处体现出结构的精巧。
  4. WATCH-X是一款基于LittleVGL的开源智能手表项目, 能够支持高质量流畅(60FPS+)的动画效果的显示,炫酷的界面加上易于扩展的系统框架,非常容易上手。
  5. garden monitor - 基于树莓派的灌溉系统 基于树莓派驱动的物联网滴灌系统利用物联网来监测和维护植物的正常生长,将传感器与植物相结合,实时监测植物状态,配合App软件,可以根据反馈的数据做出对应的操作来保证植物的健康生长。整个系统由树莓派采集数据信息,例如光照、温湿度和土壤中的水分含量等,随后将各种传感器的数据传送到云数据库中进行处理。使用智能手机应用程序在任何地点支持访问,用户在手机APP上将指令(例如水泵的状态)发送至滴灌系统并执行相关的命令。
  6. LCR Meter AU2019,阻抗(Z)是表征无源电子元件(电阻、电容、电感)的重要参数。要确定阻抗,就必须测量至少两个值(大小和相位),一般是元件两端的电压和流过该元件的电流7. Macro Mechanical Keypad - 6键超迷你键盘DIY Arduino
  7. ESP32-Smart-Watch - 基于ESP32 WROOM的开源智能手表
  8. RunTiny - 基于ATtiny10仅778字节实现的跑步小游戏
  9. ART-Pi - RT-Thread 推出的 DIY 开源硬件和项目主页
  10. sigrok开源逻辑分析软件,DSLogic就是魔改sigrok软件,salease也可以通过Sigrok开源软件,实现同样的协议解析
  11. weather-ink-screen - 支持汉朔2.9寸墨水屏E029A01的天气预报
  12. NXP最新调试工具MCU-Link vs. LPC-Link2
  13. Mega-Cube 是一个基于 PL9823 驱动 4096 个 LED 的光立方,主控方面是基于恩智浦 i.MXRT1060
  14. soft-and-hard 是一个以物联网项目为主方向分享 web 开发教程,制作并演示一个物联网系统是怎么跑起来的,介绍如何学习相关知识
  15. EEVengers/ThunderScope 雷电USB4开源示波器
  16. 12.8-GSPS analog front end reference design for high-speed oscilloscope and wide-band digitizer
  17. 开源EC
  18. T12 焊台所需的全部软硬件设计,PID 参数都是成熟的,功能完成度非常高
  19. 开源的SMU精密供电设备
  20. 6位手持开源万用表
  21. Little Bee是一款经济实惠的高性能电流探头和磁场探头,可更有效地调试和分析电子设备
  22. 红外测温仪 GY-906 红外线温度计传感器
  23. JL_AC79_DevKit V1.0 是一款高集成度WiFi 802.11b/g/n以及双模蓝牙V2.1到V5.0组合的音视频多媒体系统板
  24. X-TRACK 是一款开源 GPS 自行车码表,拥有可显示实时位置的离线地图,支持记录和显示实时轨迹以及导出标准GPX格式的轨迹文件
  25. Daytripper是一个激光绊脚器摸鱼神器
  26. 基于ESP32的哔哩哔哩小电视
  27. NumWorks一款基于STM32F412设计的图形计算器
  28. PSLab 是 Pocket Science Lab 的简称,它的目标是创建一个开源硬件设备(所有资源全开),可用于电子爱好者做实验。并提供了一系列用于工程实验的传感器,包括示波器,波形发生器,频率计数器,可编程电压,电流源和数据记录器。PSLab 从硬件,软件,手机端软件,电脑端软件全开源,界面效果极其炫酷
  29. 美信推出的全开源便携式精密校准器,精度高达 0.01%
  30. 开源的无刷电机驱动项目vedderb,软硬件都开源
  31. 基于rp2040的开源逻辑分析仪pico-coder,搭配上位机软件pulseview使用
  32. 成本非常低的开源的小飞艇Bllimpduino 2
  33. 一款集简易示波器、简易函数信号发生器、电阻测量、可调电源、输出电流测量于一体的STM32简易仪器仪表
  34. 基于ESP32和STPD01的双通道可调智能电源
  35. 开源的无刷电机驱动项目,这个项目主要分为几个部分,VESC固件,物料清单,VESC硬件,VESC工具软件,是一个非常完整的软硬件项目,并且配套的软件也出色
  36. Build a USB-C Power Supply, USB-PD allows for voltages up to 20V at currents up to 5A to be delivered across the interface
  37. ESP32S3、4寸480*800屏幕、光固化外壳,作品定位桌面小摆件,支持电脑运行数据监测、天气、新闻、疫情、日历等等,支持白天夜间模式切换、支持web配置
  38. 基于STM32L432设计的安全密钥小产品Somu
  39. 开源的标准 GNU 调试器Black Magic Probe
  40. ctxLink 是基于 Black Magic Probe(BMP)的开放式硬件,开放式固件调试开发板,支持WiFi连接和电池供电的操作。它实现了SWD和JTAG接口,用于ARM Cortex-M微控制器的远程无电缆编程和调试
  41. Segger 公司为它们的 Flasher 工具项目配套设计的一款 QSPI Flash 快速评估套件,有了它,你可以在 15 分钟之内快速测试任意一款 NOR Flash
  42. Nordic二代功耗测量套件Power Profiler Kit II,分辨率100nA,范围200nA到1A
  43. SC1933+IP2726低成本大功率氮化镓电源方案,支持多种快充协议,最大功率65W
  44. 基于树莓派单片机的24通道,100Msps的逻辑分析仪
  45. 四足机器人开源BLDC电机控制器MOTEUS
  46. 基于树莓派单片机实现超低成本的双光纤网卡100BASE-FX
  47. 开源便携监测器CatSniffer,支持Zigbee,蓝牙,LoRa,Thread,Sub 1GHz,6lowpan
  48. 开源的PCB贴装机SimplePnP
  49. DIY缝纫机
  50. 稚晖君机械键盘固件,不同于QMK、ZMK这样的开源固件,为了适配大量的键盘型号,导致存在代码臃肿、性能优化不足、扩展性不太好等问题。稚晖君基本上把全速HID设备的性能都拉到了顶。他在固件中实现了HID设备枚举、1kHz的硬实时报文以及1ms的超低延迟
  51. 电源类 22期 | 数控升降压 桌面可调电源
  52. 448个数码管模拟水流的炫酷效果
  53. 21通道120Msps的树莓派单片机逻辑分析仪加3通道ADC,上位机采用sigrok/pulseview
  54. 电源类 23期 | 同步整流降压 数字电源
  55. google开源的超长键盘
  56. TMCM-1617 无刷直流伺服驱动器的开源硬件参考设计。为了在机械臂应用中使用,该板设计了标准夹持器电子外形。它能够通过EtherCAT®,IO-Link®,或使用 Trinamic 的 TMCL 协议 RS485 控制无刷直流电机
  57. QUARK 是一个简单、易于使用的多功能开发工具,适用于 Arduino、ESP32、STM32 和类似的平台
  58. 低成本2.5KV USB电源隔离方案
  59. 开源的旋转拨号手机
  60. 基于树莓派单片机的电子书 网站2
  61. 开源USB PD供电mini SMD回流焊加热板
  62. 开放式ECU控制模块

bootloader

  1. RT-FOTA - 基于 STM32 的开源 Bootloader 框架,类似RT-Thread 官方RT-OTA 项目的民间开源版
  2. wolfBoot 开源的安全启动bootloader
  3. OpenBLT 开源的bootloader, ST发布的OpenBootloader库升级至V5.0,支持FDCAN,I2C,SPI, USB, UART,它与STM32系统引导加载器完全兼容,因此它具有相同的支持接口和命令。它也使用相同的上位机工具,如STM32CubeProgrammer
  4. TinyUF2 主要针对使用 TinyUSB 协议栈的 MCU,目前支持ESP32-S2、i.MXRT10xx、LPC55xx、STM32F4。使用 UF2 bootloader,可以方便的通过 USB 以磁盘模式更新程序,无需其它软件,非常方便。

GUI

  1. Tiny TFT Graphics Library. This is a graphics library for the family of small colour TFT displays based on the ST7735 and ST7789 driver chips. This library allows you to plot points, draw lines, draw filled rectangles, and plot text with an optional scale factor.
  2. Cortex-M处理器的2D图形加速库——Arm-2D
  3. 玲珑GUI - 面向单片机级别低价产品的开源GUI 玲珑GUI是高效的界面开发解决方案。代替串口屏、组态,降低产品成本,产品软硬件自主可控。配套界面开发软件,图形化编辑界面,生成C代码,直接和用户产品代码结合。配套下载升级软件和bootloader,解决产品升级功能和图片下载问题。
  4. GuiLite是一个具有5000行C++代码的准系统GUI框架,它可以在所有平台上运行(例如,iOS,Android,Linux,Windows,macOS,Docker和带或不带OS的MCU)。GuiLite是可嵌入的,它在其他UI框架内运行(例如,Qt,MFC,Winform,Cocoa)。您可以同时使用GuiLite功能和主机UI功能。
  5. SimpleGUI - 一款针对单色显示屏设计的GUI接口库
  6. VirtualLCD - 可用于 GUI 移植的 LCD 模拟器
  7. LVGL | GUI-Guider的使用分享
  8. LVGL的多语言转换工具MCU_Font
  9. 点阵GUI库U8G2,常用于OLED
  10. u8g2_wqy 是适合 u8g2 的中文字体,采用文泉驿点阵宋体作为源本,提供 12x12、13x13、14x14、15x15 和 16x16 点阵字库
  11. RUST编程语言小型GUI库
  12. HTML5 X Y Oscilloscope Github分享的一个完全基于HTML5写成的X Y示波器软件,只有一个页面,文件也只有十几KB的大小,不仅支持双通道波形的显示,而且可以做频谱分析。信号源就用电脑或手机的麦克风。
  13. Virtual Oscilloscope - 可插入网页设计的虚拟示波器插件
  14. Virtual Oscilloscope - 可插入网页设计的虚拟频谱仪插件
  15. 简单炫酷开源C库图形库
  16. EmberGL(Ember Graphics Library) 是一个底层开源图形库,类似于OpenGL/DirectX/Vulkan,专为 MCU 和其他内存受限的非 GPU 系统上的实时 2D/3D 渲染而设计

Lib

  1. LibU - 支持多平台的 C 语言程序库
  2. microseconds - MCU通用微秒(us)计时函数框架
  3. libopencm3 - 开源Cortex-M系列单片机固件库
  4. 8051 ELL函数库,是网友泽文i针对其丰富的芯片资源,基于keil开发的软件包。函数库采用了LL库的编程思想,充分考虑8051的特性,结合硬件条件,提供大量标准的API函数,供开发者访问底层硬件细节。并且函数库的大小可裁剪,在代码密度和执行效率上做了很好的平衡。
  5. LW_OOPC 是Light-Weight Object-Oriented Programming in(with) C的缩写, 这个框架是由台湾的高焕堂先生以及他的MISOO团队首创, 之后由金永华继续改进优化。网友 Akagi201 在金永华对于高焕堂的lw_oopc的源码的基础上进行了一些简单的修改和调试,使得lw_oopc能够用在实际的嵌入式项目中, 作为一个很好的框架传播开来。LW_OOPC 非常的轻量级, 但却很好的支持了很多面向对象的特性, 比如继承, 多态,可以优美的实现面向接口编程。
  6. key_board 是网友 wei513723 维护的用于单片机中的小巧多功能按键支持库。
  7. SQLite是世界上部署最广泛的数据库,它是一种C语言库,它实现了一个小型,快速,自包含,高可靠性,功能齐全的SQL数据库引擎。
  8. SQLCipher扩展了SQLite项目,以添加安全性增强功能,使其更适合于加密的本地数据存储,例如:动态加密,篡改检测,内存清理,强密钥派生等。SQLCipher基于SQLite,并且稳定地集成了稳定的上游发行功能。
  9. FlexibleButton 一个基于标准 C 语言的小巧灵活的按键处理库
  10. letter-shell 一个功能强大的嵌入式shell
  11. nr_micro_shell 适用于资源较少的MCU的shell
  12. 串口(UART)自动波特率识别程序设计
  13. RanFS - 一个轻量级的嵌入式文件系统库
  14. TBOX - 一个用 C 语言实现的跨平台开发库
  15. iRTU 是基于合宙 air202/208/800/801/720/724/H/D/G/U 系列模块的开源DTU/RTU解决方案,已成功运行在上百万设备,安全可靠
  16. irtu-gps 基于iRTU项目(一个开源的DTU/RTU解决方案,基于合宙硬件模块),实现了GPS数据的接收和展示,设备PCB开源/服务器端开源/小程序全开源
  17. mbedTLS - 最小巧的 SSL 加密库
  18. LwIP - 小型开源 TCP/IP 协议栈
  19. AT Command 是一种 AT 命令通信解析模块,支持裸机(at_chat)和OS版本(at)。适用于modem、WIFI模块、蓝牙通信
  20. RIL - 适用嵌入式的无线通信模块(GSM/GPRS/CatM1/NB)管理框架,目前已支持EC21、BG96、 HL8518等模组
  21. TJpgDec小型JPEG解码库
  22. 通用精简的超轻量物联网虚拟机EVM EVUE IOT.js
  23. 跨硬件、跨平台的物联网解决方案Blinker,提供APP端、设备端、服务器端支持,使用公有云服务进行数据传输存储
  24. 嵌入式设备和传感器节点设计的关系型数据库LittleD
  25. IonDB资源受限系统的键值数据库
  26. ECBM 是基于STC8单片机的外设函数库
  27. nRF51_Platform - 基于nRF51平台(蓝牙4.0)的轻量级SDK
  28. OpenLoongsonLib1c - 基于龙芯1C的底层驱动函数库
  29. libjpeg包含了JPEG解码、JPEG编码和其他的JPEG功能的实现,C语言编写
  30. FatFs 是日本工程师 ChaN 开发的面向小型嵌入式系统的一种通用的 FAT 文件系统,C 语言编写
  31. PikaScript(前称mimiscript)是一个完全重写的超轻量级python引擎,零依赖,零配置,可以在少于4KB的RAM下运行(如stm32g030c8和stm32f103c8),极易部署和扩展
  32. Ring-Buffer 是特意为嵌入式系统精简优化的环形队列,源代码仅 80 行,实现简洁可靠
  33. QueueForMcu 是一个基于单片机实现的队列功能模块,主要用于8位、16位、32位非运行RTOS的单片机应用,兼容大多数单片机平台
  34. 适用于极小资源芯片的开源加密算法库avr-crypto-lib,适用于51/avr单片机
  35. wolfSSL 是一个基于C语言的轻量级 SSL/TLS 库,专门针对嵌入式和 RTOS 环境,主打特点是体积小,速度快,功能齐。
  36. CRC库
  37. rxi_log是基于 C99 实现的简单日志库
  38. uLog 为嵌入式微控制器或任何资源有限的系统提供结构化的日志记录机制。它继承了流行的 Log4c 和 Log4j 平台背后的一些概念,但开销更低
  39. EasyLogger是RT-Thread大佬的作品,已经集成到RTOS的内部了,支持的功能非常丰富,基本满足各种开发的需求
  40. libinimini 是一个非常简单的 ini 配置文件解析库,适用于 RTOS 或裸跑的单片机
  41. heatshrink 是基于 LZSS 的小型压缩库,使用 50-300 字节的内存可以很好地运行。支持压缩和解压。用avr-gcc测试,仅需1KB Flash空间
  42. 嵌入式系统的轻量级C库—PicoLibC
  43. Opus 是用 C 语言开发的一个高灵活度的音频编码器,针对 ARM、x86 有特殊优化
  44. Qfplib 是 ARM Cortex-M 内核的 IEEE 754 浮点库家族。Qfplib 有三个分支针对不同的内核,并以不同的优化目标编写
  45. 一种超轻量的可纠错的通用单片机flash存储方案TinyFlashDB
  46. 小而美的、用于嵌入式系统的USB主从协议栈CherryUSB
  47. FatFS 作者 ChaN 老师做的一个 miniDDS 库。方案基于 ST 公司的 STM32F303K8T6,该芯片集成了三个12位D-A转换器(高转换率、多通道、1 Msa/sec)。ChaN 老师在方案实现中详细研究了利用 LUT 数据插值提高合成波形精度的方法
  48. Mbed推出的精简 printf 实现Minimal printf,C 标准库里的 printf 实现比较占空间
  49. CMSIS-DSP软件包
  50. IO模拟CAN协议CANT
  51. IO模拟CAN协议CANTC和Python包canhack,方便大家移植到各种不带CAN的芯片

RTOS

  1. Lua-RTOS-ESP32是一款支持Lua编程的RTOS,目前支持ESP32,ESP8266和PIC32MZ,还带有图形化的上位机编程界面
  2. TinyGo是一个将Go语言带入具有单处理器内核的微控制器和小型系统的项目,其通过创建基于LLVM的新编译器来实现在微控制器上运行Go程序,这有望带来更小更高效的代码,并且肯定会带来更大的灵活性。
  3. KLite是由个人编写的嵌入式操作系统内核,创建于2015年5月6日,并以MIT协议开放源代码。它是一款入门级的小型抢占式操作系统内核,以简洁易用为设计目标,旨在降低学习嵌入式操作系统编程和入门的难度。简洁的API风格,简洁的调用方式,简单的移植方法,可能是目前最简单易用的嵌入式操作系统内核.
  4. AntOS - 适用 8051 的超轻量级实时操作系统
  5. AliOS Things 发布于2017年杭州云栖大会, 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统
  6. cola_os 是一个 300 行代码实现多任务管理的 OS,在很多 MCU 开发中,功能很简单,实时性要求不强,如果使用 RTOS 显得太浪费,任务多了管理不当又很乱,所以 cola_os 这种简单好用的轮询式任务管理是更合适的选择

工具

  1. SerialChart is used for real-time charting of data sent via serial (RS-232) port
  2. Serial Studio是一个多平台,多用途的串行数据可视化的应用软件。Serial Studio的目标是使嵌入式开发人员和制造商可以轻松地可视化的呈现和分析其项目和设备生成的数据,而无需为每个项目编写专用的计算机软件。
  3. SerialPlot是一个可视化的串口收发工具,QT源码开源。这个软件非常好用,能录波、缩放、多种格式输入,数据输入设置比较灵活,作者还在持续更新。
  4. ScriptCommunicator 是一种可编写脚本的跨平台数据终端,支持串行端口(RS232、USB到串行)、UDP、TCP客户机/服务器、SPI、I2C和CAN。所有发送和接收的数据都可以显示在控制台中,并可以记录在html和文本日志中。
  5. amaoCom 即猫猫串口网络调试助手,集成com串口和TCP/UDP服务器,是开发者阿猫在项目开发过程中遇到各种问题解决方法,网友建议,与开发需求相结合而开发的一个实用简洁高效的串口网络调试助手
  6. VOFA+ 是一款通过直观简洁的协议将字节流翻译成多通道数据的软件,支持十六进制浮点数据,也支持CSV格式字符串流。VOFA+ 通过拖动的操作逻辑动态添加控件,并将数据绑定到控件上,以实现传感器数据的可视化。
  7. USB-HID-TEST 轻量级 USB 调试工具
  8. Zadig USB上位机驱动开发工具,特别是基于libUSB的上位机开发
  9. stcgal 是 STC MCU 的命令行编程工具,兼容 8051 系列单片机。是 STC Windows 软件的全功能开源替代品,便携使用,适合自动化
  10. Mind+ - 图形化Arduino编程工具
  11. Black Duck Protex开源代码检测工具
  12. Coverity代码静态检测工具
  13. Jenkins开源免费持续集成工具
  14. python中l表示_SKIDL: 在PYTHON中描述你的电路
  15. OpenOCD(Open On-Chip Debugger)是一个开源的片上调试器,它可以控制包括Wiggler之内的很多JTAG硬件,我们可以将它理解为一种GDB服务程序。OpenOCD 旨在提供针对嵌入式设备的调试、系统编程和边界扫描功能。https://github.com/openocd-org/openocd
  16. gdbgui 是gdb的一个Web可视化扩展,可以向开发人员提供Web展示前端,因此可以在浏览器中实现断点添加,堆栈查看跟踪以及更改上下文和参数值等操作。https://github.com/cs01/gdbgui
  17. Visual GDB 被描述为具有将 GCC、GDB 和 GNU Make 无缝集成到 Visual Studio 的能力,VisualGDB和Visual Studio相结合,使得跨平台开发非常容易和简便
  18. SCons 是一个Python写的自动化构建工具,嵌入式项目常用
  19. project_generator 嵌入式IDE工程文件自动生成工具,支持uVision4、uVision5和IAR等
  20. IDA Pro 交互式反汇编工具
  21. SnapEDA是PCB界的类GitHub网站,提供Eagle, Altium, OrCad, Allegro, KiCad, PADS等软件的封装和原理图库
  22. 编程手册管理软件Zeal
  23. PlatformIO 是一个用于物联网开发的开源生态系统。它提供跨平台的开发环境和统一的调试器,还支持远程单元测试和固件更新。PlatformIO 的核心(PlatformIO Core) 就是一个终端程序, 它能配合您喜欢的多款云 IDE、桌面 IDE 或者 通用代码编辑器构建 PlatformIO 的 IDE,比如 Atom, CLion, Eclipse, Emacs, NetBeans, Qt Creator, Sublime Text, VIM, Visual Studio, VSCode 等等。目前官方推荐的 IDE 使用方案就是 VSCode + PlatformIO IDE 插件
  24. TI推出的计算软件,主要用于运放,比较器,数据转换,噪声,PCB,传感器,I2C上拉计算
  25. WOKWI 是一个很酷的支持Arduino、ESP32、树莓派Pico在线仿真学习的网站
  26. 开源免费文件文件夹比较工具WinMerge
  27. Ghidra 是由美国国家安全局(NSA)研究理事会创建和维护的软件逆向工程(SRE)框架
  28. Renode 是一个用于嵌入式平台的开源仿真器。它支持 x86(Intel Quark)、 Cortex-A (NVIDIA Tegra)、 Cortex-M、 SPARC (Leon)和基于risc-v 的平台
  29. Tracealyzer是 Percepio 公司开发的一款用于RTOS或基于linux的嵌入式软件系统的可视化跟踪工具,对系统运行时的行为提供了前所未有的洞察方法。帮助开发人员加快固件的开发,减少对系统验证和性能优化所需要的时间
  30. Virtual Eval(虚拟评估)是ADI公司推出的一款综合性在线产品评估工具。Virtual Eval采用详细软件模型来模拟器件关键性能特征,而不要求购买硬件
  31. Mbed 为了方便开发,推出了一个仿真器,可以模拟运行效果,加快开发速度
  32. Visuino 是来自 Mitov 软件的最新创新软件。一个可视化编程环境,允许仿真编程Arduino板
  33. QT的串口示波器,完全开源,支持串口、TCP、波形显示、通信协议。感觉很不错,跟以前分享的那个vofa+有点像
  34. SD Card Formatter,SD卡联盟强烈强烈建议使用此软件来格式化SD/SDHC/SDXC卡
  35. Altium 出品的线上PCB Viewer,对于没有安装PCB软件的用户来说,查看PCB将非常方便
  36. ImHex是一款功能强劲的hex编辑器
  37. 二值视频格式转换工具,适合用在单色屏上,比如OLED
  38. 基于STM32的3D打印机模拟器,STM32硬件外设全部采用模拟的方式实现
  39. 线缆设计工具Cable Design TOOL 2022
  40. allaboutcircuits网站的97款在线电子开发工具
  41. SuperCom 是超级串口调试工具,用于 Window 串口日志的采集、存储、可视化等功能
  42. com0com - 开源的虚拟串口软件

文章

绕过APPROTECT提取nRF52840固件(CVE-2020-27211复现)
工程师笔记 |USB发送数据时出现迟滞现象
用FPGA/树莓派RP2040驱动HDMI的资源
算法大师Robert Sedgewick在线课件
ARM School Program推出的系列培训手册

你可能感兴趣的:(IoT单片机,单片机)