You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Microchip Makes (@MicrochipMakes) - Twitter
Tube Time (@TubeTimeUS) - Twitter
稚晖君 - Bilibili
Mr Innovative - YouTube
备注:部分内容参考了这篇文章:
10 YouTubers you should be following - Raspberry Pi Blog
Maker Faire
创客嘉年华
Seeed Studio Bazaar, The IoT Hardware enabler.
DFRobot创客商城-创客教育_STEAM教育_开源硬件_人工智能_机器人教育
SparkFun Electronics
Adafruit Industries, Unique & fun DIY electronics and kits
Arduino Official Store
Digi-Key 中国
e络盟 element14
逻辑分析仪
电烙铁/焊台/热风枪/吸锡器
3D 打印机
激光切割机/雕刻机
目前市面上流行的单片机种类较多,本节只整理比较流行、有代表性的。
常见的开发板/单片机:
Arduino
: 基于 AVR 等单片机开发板,拥有完善的生态(软件、教程、各种周边模块等),受到了世界各地 DIY 爱好者的喜爱。且有不少厂商推出 Arduino 开发板,部分在价格上有优势、部分增加了新的功能
Lembed/Awesome-arduino
Microduino
: Arduino 兼容开发板,特色在于体积小巧,且官方提供网络通信、OLED、电源管理、RTC、SD 卡槽等多种模块,与 Microduino 具有相同的体积,能够直接堆叠安装
DFRduino
: DFRobot 出品的 Arduino 开发板
Bluno
: DFRobot 出品的 Arduino 兼容开发板,在原版 Arduino 的基础上,增加了蓝牙功能
Seeeduino
: Seeed Studio 出品的 Arduino 开发板
ESP8266
: 支持 Wi-Fi 的单片机,在物联网项目中受欢迎
pando85/awesome-esp8266
NodeMcu
: 基于 ESP8266 的开发板
ESP32
: 支持 Wi-Fi 与蓝牙的单片机
agucova/awesome-esp
M5Stack
: 小巧、模块化的 ESP32 开发板
Mbed
: ARM Mbed 认证的开发板,能够兼容 Mbed 的一系列开发工具
8051 系列
: Intel 推出的单片机系列,国内不少单片机教程基于 8051,目前较为流行的是各个厂商推出的增强型 8051 单片机
STC
: 国内常用的一种增强型 8051 单片机,具有指令执行速度快、外设丰富等特点(部分型号无需外部晶振和复位电路,只需通电即可工作,可以大大简化电路设计)。缺点是官网和文档比较混乱
EFM8/C8051F 系列
: 增强型 8051 单片机,提供跨平台 IDE(
Simplify Studio
),方便在 Linux、macOS 环境上开发和调试
STM32
: ST 公司基于 ARM Cortrx-M 的单片机
STM32 Discovery 发现工具包
: STM32 官方开发板
MSP430
: TI 推出的 16 位单片机,特色为低功耗
MSP430 Launchpad
: MSP430 等 TI 芯片的官方开发板
Raspberry Pi Pico/RP2040
: Raspberry Pi Pico 是来自 Raspberry Pi 的开发板。采用了 Raspberry Pi 设计的 RP2040 单片机,支持 Programmable I/O
TI SimpleLink 系列
: 支持无线通信的单片机系列,其中不同型号支持不同协议
CC2530
: 支持 ZigBee 的单片机/SoC,基于 8051
CC2540
: 支持蓝牙 BLE 的单片机/SoC,基于 8051
CC3200
: 支持 Wi-Fi 的单片机,基于 32 位 ARM Cortex-M
WRTnode
: 物联网开发板,部分型号支持运行 OpenWrt
OpenMV
: 带有摄像头的开发板,支持使用 MicroPython 完成计算机视觉项目
其他有特色的开发板:
HE
: 小巧的 AR9331 OpenWrt 模块,兼容 Arduino Yún
NavSpark
: 内置 GPS/北斗的 Arduino
Wio Terminal
: 带有蓝牙、双频 Wi-Fi、显示屏的开发板,体积小巧,带有塑料外壳
如下文章对常见的单片机进行了非常全面的评测:
The Amazing $1 Microcontroller - Jay Carlson
与单片机开发板相比,单板计算机一般运行 Linux 等通用操作系统,性能也更强大。
常见的单板计算机:
Raspberry Pi
: 最著名的单板计算机
thibmaek/awesome-raspberry-pi
blackout314/awesome-raspberry-pi
wwj718/awesome-raspberry-pi-zh
ASUS Tinker Board
: 来自华硕的单板计算机
thyrlian/awesome-asus-tinker-board
NVIDIA Jetson Nano Developer Kit
: 来自 NVIDIA 的开发板,带有 GPU,适合用来实现计算机视觉和 AI 项目
elloza/awesome-jetson-nano
msurguy/awesome-jetson-nano
LattePanda
: x86 架构开发板,支持运行 Windows 10
CubieBoard
Banana Pi
Orange Pi
ODROID
Khadas
其他有特色的单板计算机:
Marvell ESPRESSObin
: 具有强大的网络和存储功能,除了用于实现物联网项目,也可以用于 DIY NAS 或路由器
如下文章对常见的嵌入式 CPU/SoC 进行了全面的评测。如果想自制单板计算机、自制基于嵌入式 Linux 的设备,或者想对单板计算机的 CPU 进行更详细的了解,都可以参考这篇文章:
So you want to build an embedded Linux system? - Jay Carlson
当然,单板计算机本身也是可以 DIY 的,例如下面两个 DIY 单板计算机项目:
Yuzuki Chameleon
: 基于全志 H616 的单板电脑,PCB 设计符合嘉立创的免费打样规则
Project-Quantum
: 超迷你模块化卡片电脑计划
电子墨水屏模块
LILYGO TTGO 电子墨水屏模块
:集成 ESP32 和电子墨水屏的模块/开发板
Altium Designer
: 国内比较流行的 EDA 工具,有着丰富的教程,收费
Altium CircuitMaker
: 来自 Altium,免费的 PCB 设计工具
KiCad
Eagle
立创 EDA
/
EasyEDA
Fritzing
Proteus
Autodesk Tinkercad Circuits
Keil 8051 Microcontroller Development Tools
: 国内常用的 8051 开发工具
Keil MDK
: ARM Cortex-M 单片机开发工具
IAR Embedded Workbench
: 单片机开发工具,在编译优化方面有特色
PlatformIO
: 全能的嵌入式开发工具,支持大量单片机和开发板,提供 Visual Studio Code、Atom、CLion 插件
Arduino IDE
: Arduino 官方 IDE,易于上手,但功能较少
Arduino Pro IDE
: Arduino 官方 IDE,基于 Visual Studio Code,比 Arduino IDE 拥有更丰富的功能
Mbed Studio
: ARM Mbed 提供的免费 IDE
GNU MCU Eclipse
: Eclipse 插件,支持在 Eclipse 上进行嵌入式开发
CoIDE
:
Visual Micro
: Visual Studio 插件,支持在 Visual Studio 上进行 Arduino 的开发和调试
VisualGDB
: Visual Studio 插件,支持在 Visual Studio 上进行 Arduino、ESP8266/ESP32、Mbed 以及多种架构单片机的开发,并具有强大的调试功能
Atmel Studio
: Microchip/Atmel 官方提供的 IDE,用于 AVR 和 SAM 单片机的开发。基于 Visual Studio,并提供免费的
Visual Assistant
授权
DAPLink (CMSIS-DAP)
: ARM 官方开源的芯片调试工具,可用于代替 J-Link 等收费工具
更多资源:
nhivp/Awesome-Embedded
嵌入式操作系统
Apache NuttX
: 开源的嵌入式实时操作系统,POSIX 兼容,功能丰富(任务管理、CPU 占用率测量、内存管理、丰富的文件系统支持、虚拟文件系统、设备驱动、网络、USB、电源管理、音频解码器、GUI、Shell、支持浮点运算的数学库、日志等)。著名的飞控软件 PX4 就是基于 NuttX 的
RIOT
: 对物联网友好的嵌入式操作系统,使用了
wiselib
算法库
Contiki-NG
: 物联网嵌入式操作系统,
使用了 Protothreads 协程库
Atomthreads
: 轻量级嵌入式实时操作系统,整个操作系统仅有 5 个
.c
文件,除了应用于嵌入式项目,也非常适合用于学习嵌入式操作系统的原理
FreeRTOS
TinyOS
ChibiOS
picolibc/picolibc: picolibc - a C library designed for embedded 32- and 64- bit systems.
用于嵌入式设备的脚本语言运行环境
Lua
: 一种脚本语言语言。与 Python、JavaScript 相比,原版的 Lua 解释器无需做过多的适配修改,就能移植到嵌入式系统
eLua
: 用于单片机的 Lua 环境。提供了一些了操作单片机外设的 API
MicroPython
: 用于单片机的 Python 环境
Espruino
: 用于单片机的 JavaScript 环境
Lua RTOS
: 支持 Lua 的嵌入式操作系统
Ruff
: 支持 JavaScript 的嵌入式操作系统
Pumbaa
: 支持 MicroPython 的嵌入式操作系统
驱动与外设库
libopenstm32、libopencm3
: 开源的 ARM Cortex-M 单片机外设库,在进行开源的嵌入式项目时,用于取代官方的外设库(例如 STM32 标准外设库),避免带来与 GPL 协议不兼容的问题
JorgeAparicio/libstm32pp
: 基于 C++ 的 STM32 外设库
andysworkshop/stm32plus
: 基于 C++ 的 STM32 外设库
libemb
: 提供串口、控制台IO、shell、nRF24l01无线通信等功能
pigweed/pigweed - Git at Google
: 来自 Google 的嵌入式库
常见功能在嵌入式系统上的实现
umm_malloc
: 用于嵌入式系统的内存管理程序
jsmn
: 适合在嵌入式系统上使用的 json 处理程序。不依赖
malloc()
,方便移植
图形与 GUI
uGFX
: 轻量级嵌入式 GUI 库
U8g2
: 用于嵌入式设备的图形库,支持 Arduino
The Embedded Rust Book
: 使用 Rust 进行嵌入式开发的教程
rust-embedded/awesome-embedded-rust
Autodesk Tinkercad
SketchUp
SolidWorks
CorelDRAW
Processing
Yeelink
Arduino IoT Cloud
Xively
乐联网 - 乐为物联开放平台
各大云计算厂商提供的物联网云服务
基础知识:
Skillbuilder: Midi For Makers
软件与工具:
Mozzi
: Arduino PWM 音效库
The Hairless MIDI<->Serial Bridge
:将串口输入转换为 MIDI 信号
参考项目:
不同的输入方式
MakeyMakey
:触摸输入。将任何物体变为琴键
Theremin 泰勒明
:通过移动手掌,改变手掌与天线的距离,来改变输出声音的频率
Singing Plant. Make Your Plant Sing With Arduino, Touche and a Gameduino
: 会唱歌的植物。通过触摸植物,可以使装置发出不同的声音
SNF Drumming MIDI Glove using Arduino and light sensors
:MIDI 手套,手套中装有光线传感器,可识别动作
Musical MIDI Shoes
:通过脚部动作演奏音乐
Making music with your muscles!
: 利用肌肉电传感器(EMG)做为输入装置,产生音乐
Midify Your Life! Give Any Sensor the Power of MIDI
:将各种传感器输入转换为 MIDI 信号
Turning GameCube & N64 Pads Into MIDI Controllers | Hackaday
:将 NGC 和 N64 游戏手柄转换为 MIDI 控制器
The Arduipiano is an Arduino-powered floor piano that lets you play music with your feet | Arduino Blog
:脚踏钢琴
不同的输出方式
Making Music with Makeblock
:通过机器人演奏木琴
Arduino-Controlled Robotic Drum
:通过机械臂打鼓
DIY 等离子扬声器
:电弧击穿空气发声
The RoboTrombo is a MIDI-controlled robotic trombone
: MIDI 控制的长号机器人
Firefly Jar Portable Bluetooth Speakers
: 使用萤火虫罐制作蓝牙扬声器
自制音频设备
3D Printed Mini Bluetooth Speaker
: 迷你蓝牙扬声器
Bluetooth Speaker W/ Music-Reactive LED Matrix
: 带有 LED 点阵,能够显示音乐频谱的蓝牙扬声器
自制MP3播放器Bric - WAA-ZephRay - bilibili
Arduino-Powered Turntables That Turn DJing Into Child's Play
: 互动音乐教育装置
Fifty speakers for an interactive sound sculpture
: 五十个扬声器做成的互动声音雕塑
Electronic Instrument
:简易自制乐器
Bee Uno - Arduino-controlled DJ midi controller
Making An ARM Powered MIDI Synthesizer
Arduino Esplora
: 游戏摇杆形状的 Arduino,内置话筒、光线传感器、加速度传感器、LCD 插槽等
Gamebuino
: 基于 Arduino 的开源游戏机
Gameduino
: Arduino 游戏扩展板,带有 VGA 和音频输出,使用 SPI 通信,基于 FPGA
SmartGPU
:用于 Arduino,带图形加速的 LCD 屏幕
fdivitto/FabGL
: 在 ESP32 上制作游戏的全套软件库 Display Controller (VGA, SSD1306), PS/2 Mouse and Keyboard Controller, Graphics Library, Sound Engine, Game Engine and ANSI/VT Terminal for the ESP32
Building a ‘Homebrew’ Video Game Console | Internal Register
Playing Tetris On An Oscilloscope
: 在示波器上玩俄罗斯方块
写给玩家的FPGA入门指南 - module ZephRay;
- 使用 FPGA 自制 Game Boy 的教程
纸质版:《
FPGA入门指南 用Verilog HDL语言设计计算机系统
》
更多资源:
Rewind: 30 projects from 2015 that gamers will love
The MOnSter 6502
: 用分立元件搭建的 6502 CPU,通过 LED 显示内部状态。可用于 CPU 原理的教学
diy-VT100 - A Miniature hardware terminal
: 自制 VT100 终端
MiSTer
: 使用现代硬件来重新实现复古电脑和游戏主机。本项目为开源项目,包含一个 FPGA 板、一系列外设硬件、以及对应的开源软件,具有较强的可扩展性
LED Cube 8x8x8
: 光立方
SMD Nixie Clock
: 辉光管时钟
如何制作一个 WIFI 像素时钟,只要 Lametric 十分之一的价格
Time Twister
: 使用乐高套件制作的机械数字时钟
Build a Pi Zero W pocket projector - MickMake
: DIY 微型投影仪
DIY Night Lamp Light Stand for Room Decor
DIY - LED Water Lamp
自行车LED投影灯
Make an Interactive IPad Controlled LED Wall
1,156 LEDs make up these dual acrylic light-up panels
Google Analytics on Arduino EPS8266 and 2.4" TFT
: 在液晶显示屏上显示 Google Analytics 统计信息
Use a Raspberry Pi and E-Ink Display to Build a Desktop Monitoring Station for Vital Information - Hackster.io
: 在电子墨水屏上显示日历和待办事项列表
Building a TRUE 4k home cinema projector (it’s awesome)
: 自制 4K 投影仪
Create your own home office work status light with Raspberry Pi - Raspberry Pi
: 在家办公时,用一个装在墙壁上的指示灯,来告诉家人自己是否正忙
PIXIE - Chainable, Dual 5*7 Micro-LED Displays
: 可扩展的 LED 点阵显示屏,显示效果比较独特
Zenreader: A 4.7 inches E-Ink RSS Reader Powered by ESP32 – Huan Truong's Pensieve
: 基于 e-ink 电子墨水屏的 RSS 阅读器
mcer12/Temper-ESP8266: Temper is a compact temperature sensor based on ESP8266 and SHT30 with large 13x7 pixel led display.
: 自制温度计,拥有精致的 LED 点阵屏幕
MagicMirror²
: DIY 魔镜
用树莓派打造一个超薄魔镜的简单教程 | OneV's Den
Display Array Clock
: LED 阵列时钟,通过软件可以实现不同的显示效果
6adgy - E-Ink Desk Clock/Calendar with 6 displays
: E-ink 电子墨水屏阵列时钟
Building a Panel out of e-ink Electronic Shelf Labels | rbaron.net
:使用一组低价的电子墨水屏价签,制作大屏幕显示面板
Rŏ̽ta: Counting, With Style | Hackaday
: 使用辉光管和老式旋转电话拨号盘制作的一个小装置,可以作为秒表或者计数器。看起来很有复古气息。
制作 SHOOK16 摇摇棒
Arduino Wireless Power POV Display
: 2D 「风火轮」
PropHelix is an amazing 3D POV holographic display
: 3D 「风火轮」
Bike Wheel POV Display
: 自行车「风火轮」
Twitter Mood Light - the World's Mood in a Box
: 世界心情指示器。实时统计 Twitter 上所有关于心情、情绪的词汇,并通过不同的色彩来显示「世界的心情」
Mazda Miata gets Arduino dashboard upgrade
: 使用 Arduino 制作汽车仪表盘
Topuino - 你愿意在办公桌上放一个监控服务器的小摆件吗? - undefined
Mapuino - 一个硬件极客风的 WEB 访客地图显示摆件 - undefined
Arduino Neural Network Robot - Instructables
: Arduino 神经网络机器人
Clean And Minimal Self-balancing Robot
: 小巧、容易制作的自平衡小车
mike4192/spotMicro: Spot Micro Quadripeg Project
: 自制「波士顿动力机器狗」
Petoi Bittle
: 另一个可编程的「机器狗」
Chapelier Fou
: 一只会「行走」的水壶
ToanTech/py-apple-quadruped-robot
: 菠萝狗--一个低成本大型全套四足机器人软硬件开源项目
Real Robot One is a high-performance robotic arm that you can build yourself
: 方便 DIY 的高性能机械臂,具有较大的活动范围,而且能负担重物
基础知识:
用Arduino扩展无人飞行器+普及无人机知识,不会算法的人必看
不思带你【从零开始】做四轴!!!(强势整理搬运版)
从零做四轴飞行器
Autonomous Navigation for Flying Robots
: 一个关于飞行器的 MOOC 课程
开源项目:
MultiWii
Ardupilot
PX4
(基于 Nuttx)
CrazyFlie
Crazepony
圆点博士小四轴飞行器
(部分开源)
Hom-Wang/Quadcopter
商业级产品参考:
飞!行!器!
鱼菜共生(Aquaponics)
Arduino 自动浇花套件
自制 Arduino 孵蛋器
自制宠物喂食器
I'm a cyborg now! (On Building My Own Artificial Pancreas)
: 自制胰腺(适用于糖尿病患者,自动检测血糖,并根据血糖水平注射胰岛素)
An Arduino ECG device with an integrated display | Arduino Blog
: 基于 Arduino 的心电图装置
DIY Pull Up Bar | Heavy Duty | The Casual Engineer - YouTube
:带计数功能的引体向上杆
Arduino + 灰尘传感器实现空气质量检测
The AirGradient DIY Air Quality Sensor
: 一个更完整的空气质量检测仪 DIY 教程,提供 3D 打印外壳
Chicken coop door automation with Arduino
kizniche/Mycodo
: 环境监控与自动调节系统,可在 Raspberry Pi 上运行
ESPHome — ESPHome
: 基于 ESP8266/ESP32 制作智能家居设备
Arduino LilyPad
: 可以缝在衣物上的 Arduino 开发板
Nike+ FuelBand SE BLE Protocol Reversed
Open source DIY Nike+ Fuelband | Hackaday.io
DoWatch DIY 手表
esp32玩转彩屏 | 自制太空人主题的透明手表 - DF创客社区 - 分享创造的喜悦
Watchy - An Open Source Smartwatch That You Build Yourself - YouTube
: 电子墨水屏手表
PiGlass v2
: 使用 Raspberry Pi Zero 制作的 AR 眼镜
Smartphone Charger Powered by Fire
: 火力发电的手机充电器
How to Build a Bicycle Generator
: 自行车改装发电机
Dandelion Wind Turbine
: 风力发电机
This wearable robot can zip up your jacket for you
: 一个能自动开拉链的小装置
激光写字装置
: 可作为礼物的激光写字装置(原文链接已失效,无法加载图片,可使用
此第三方网站的转载链接
阅读)
写字机器人
AxiDraw Writing and Drawing Machines
Drawing Robot for Arduino
Make Arduino XY Plotter Drawing Robot Polargraph
Fumik: An Arduino Wall Drawing Robot Jellyfish | Hackaday
【Maker源代码】制作一个宠物机器人 - DF创客社区 - 分享创造的喜悦
鸡蛋绘图装置 Robotic Easter Egg Painter - Arduino Project Hub
鸡蛋绘图时钟 Egg Clock - YouTube
Fighting smartphone addiction with Arduino
: 使用 Arduino 控制手机使用时间,避免手机上瘾
ShiqiYu/StrawberryRobot
: 草莓分拣机器人
The Toothbrush Machine
: 刷牙机
Review: Adafruit MONSTER M4SK
:眼镜形状的开发板,眼睛是两个 LCD 屏幕,可显示动画
【何同学】我做了一个自己打字的键盘
:会自动打字的键盘。视频中何同学还利用同样的原理,复刻了 2009 年奥运会上的活字印刷表演
我养了一朵云
:能够漂浮在空中,与人陪伴的「云朵」
高压电小玩意——高压发生器,等离子蚀刻和电弧球| 果壳 科技有意思
特斯拉线圈制作教程,纪念特斯拉诞辰 - 爱折腾 - 开动脑筋 挽起袖子 准备折腾 . . .
自制电磁炮 V2.0 - FGHRSH 的博客
让电弧唱歌,自制简易zvs等离子扬声器 | DIY小组 | 果壳网 科技有意思
イルミパケット - セキュリティ博物館
: 会发光的报文。通过 LED 灯光的流动,对网络报文的传输进行可视化。
The Megaprocessor
: 使用分立元器件制作的 CPU。CPU 的各个组件带有 LED,通过 LED 可显示数据的流向。
Building the worst digital camera ever | Arduino Blog
: 使用光敏电阻制作的数码相机,成本极低。可用于展示数码相机的工作原理。
Seeed-Studio/DSO_Nano
: DIY 示波器
DSLoigc
: 开源、跨平台的 USB 逻辑分析仪
IBM/MicroscoPy
: 使用 LEGO、Arduino、Raspberry Pi 制作的显微镜
This Arduino-powered spectrophotometer uses a little prism to create rainbows
: 使用 Arduino 制作的光谱仪
myst729/xtrm
: 自制机械键盘
【自制】我做了一把 模 块 化 机 械 键 盘 !【软核】
: 稚晖君的 DIY 模块化机械键盘项目。键盘包含了屏幕,和一个用无刷电机实现的力反馈旋钮
摄影类工具
Transforming a 3D printer into a four-axis camera slider
: 3D 打印机改装成相机稳定器
rbenamotz/LEMPA
: 使用 Raspberry Pi 制作的单片机编程器
烤肉vs贴片 | 电熨斗改造的微型回流焊加热台 - DF创客社区
Linux on an 8-bit micro?
: 在 8 位 AVR 单片机上模拟 32 位 CPU,来运行 Linux
Making aerogel - YouTube
: 自制气凝胶
ruha.camera | 3D Printable Retro-style Raspberry Pi HQ Camera
: 使用 Raspberry Pi 自制相机
Vizy
: 使用 Raspberry Pi 制作的 AI 相机
欢迎通过
提交 Issue
,或
提交 Pull request
的方式,为本文档做出贡献。
在参与之前,请先阅读
参与者公约
。
本作品采用
知识共享署名 4.0 国际许可协议
进行许可。