Skip to content

Introduction

系列产品的概述和特点。

TODO: 插入购买卡片

Comparison

M 系列产品根据不同的MCU主控,有一些功能差异,下面是功能的对比表。

M1M2M3M4
ChipNordic nRF52840Expressif ESP32-C6Rasbperry Pi RP2040WCH CH32V208
ArchitectureSingle-core ARM Cortex-M4Dual-core RISC-V 32BitDual-core Cortex-M0+Single-core RISC-V 32Bit
Freq.64 MHz160MHz & 20MHz(Low Power Core)133 MHz144MHz
RAM256 KB512 KB64 KB
Internal ROM/Flash1 MB320 KB480 KB
Flash on-board2 MB2 MB2 MB
WiFi2.4GHz, 802.11b/g/n/ax
Bluetooth LE5.05.35.3
Ethernet10M PHY
Programming IO48 GPIO30/22 GPIO51 GPIO
CAN
UART2 UART2 UART + 1 LP UART3 UART
I2C1 I2C + 1 LP I2C2 I2C
SPI2 SPI
ADC7 channels
PWM6 channels
User LED1 WS2812 RGB LED1 WS2812 RGB LED1 WS2812 RGB LED1 WS2812 RGB LED
Button1 Button1 Button1 Button1 Button
Low PowerYesYesYes
Board Dimensions

支持的开发环境

开发环境的支持,根据不同 MCU 主控,也会有差异,当前的状态如下。

Arduino 是一种面向初学者的开发环境,通过简单的代码可以轻松控制硬件设备。它提供了许多库,适用于各种传感器和外设,帮助快速原型开发。

MicroPython 是 Python 的精简版,专为微控制器设计,适合快速开发嵌入式项目。通过 Python 语法,用户可以轻松编写和调试嵌入式程序。

Rust 是一种注重安全性和性能的语言,能够有效防止内存泄漏和并发问题。虽然上手稍有难度,但它的内存管理机制非常适合嵌入式开发。

Zig 是一门崭新的系统编程语言,强调明确的内存管理和直接的硬件访问。它灵活且高效,非常适合资源受限的嵌入式系统开发。

TinyGo 是 Go 语言的嵌入式版本,支持在微控制器和 WebAssembly 上运行。它提供了简洁的语法,适合快速编写可移植的嵌入式程序。

M1M2M3M4
Arduino
MicroPython
C
Rust
Zig
TinyGo

对 RTOS 的支持也有差异。

Zephyr 是一个模块化的实时操作系统,专为资源受限的嵌入式设备设计。它支持多种架构和外围设备,适合开发跨平台的物联网应用。

FreeRTOS 是轻量级的实时操作系统,广泛应用于嵌入式系统。它具有灵活的任务调度功能,非常适合小型设备的实时任务管理。

Embassy 是一个基于 Rust 的嵌入式异步框架,专注于无阻塞的异步任务管理。它利用 Rust 的内存安全特性,帮助开发高效且安全的嵌入式系统。

RT-Thread 是一个实时操作系统,支持丰富的嵌入式开发功能。它提供灵活的内核架构,适用于物联网、工业控制等场景。

RTIC (Real-Time Interrupt-driven Concurrency) 是基于 Rust 的并发框架,专为实时系统设计。它通过基于中断的设计确保系统高效运行,适合需要实时响应的嵌入式项目。

NuttX 是一个 POSIX 兼容的实时操作系统,强调小型化和高可移植性。它支持丰富的嵌入式功能,适合从低端到高端的微控制器开发。

ThreadX 是嵌入式设备上广泛应用的实时操作系统,以高效的线程管理著称。它内存占用小,调度快速,适合需要低延迟和高实时性的应用。

M1M2M3M4M5M6
Zephyr
FreeRTOS
Embassy
RT-Thread
RTIC
NuttX
ThreadX

Features

  • 板载 16Mbits(2MBytes) 闪存
  • 板载 WS2812 可寻址 RGB LED 灯
  • 板载一个轻触开关(Tact Switch)
  • 支持 USB-C 接口供电,板载完整的充放电电路,支持锂电池
  • 兼容 Pro Micro 板型和 IO