Seeed Studio XIAO SAMD21 入门指南

概述
Seeed Studio XIAO SAMD21(曾用名 Seeeduino XIAO)是 Seeed Studio XIAO 家族的首款产品,这是一系列兼容 Arduino 的强大拇指尺寸开发板。它搭载了功能强大的 ATSAMD21G18A-MU,这是一款低功耗微控制器。另一方面,这块小板子在处理性能方面表现良好,却只需要更低的功耗。它采用超小尺寸设计,可用于可穿戴设备和小型项目。
Seeed Studio XIAO SAMD21 具有 14 个引脚,可用作 11 个数字接口、11 个模拟接口、10 个 PWM 接口(d1-d10)、1 个 DAC 输出引脚 D0、1 个 SWD 焊盘接口、1 个 I2C 接口、1 个 SPI 接口、1 个 UART 接口,通过引脚复用实现串口通信指示灯(T/R)和闪烁指示灯(L)。LED(电源、L、RX、TX)的颜色分别为绿色、黄色、蓝色和蓝色。此外,Seeed Studio XIAO SAMD21 具有一个 Type-C 接口,可用于供电和下载代码。板上有两个复位焊盘,你可以将它们短接来复位开发板。
由 Microchip 的 SAMD21G18A ARM Cortex-M0+ 32 位处理器提供动力,XIAO SAMD21 Plus 为这款小巧多用的 XIAO SAMD21 带来了更高的灵活性和可扩展性。在保持包括兼容 Arduino、MicroPython 和 PlatformIO 在内的所有强大特性的同时,Plus 版本重新设计了侧边镀铜孔和背面焊盘布局,提供额外 16 个 GPIO、集成锂电池管理、独立的 Reset 和 Boot 按钮,以及板载可编程 WS2812 RGB LED。它非常适合高级物联网项目、电池供电的可穿戴设备、嵌入式应用以及可量产的 SoM 设计。
文档
关于 Seeed Studio XIAO SAMD21 的使用有两份文档,分别侧重不同的内容,请参考下表:
| Seeed 官方文档 | Nanase 编写的文档 |
|---|---|
| 引脚图 | 接口 |
| Seeed Studio XIAO SAMD21 入门指南 | Seeed Studio XIAO SAMD21 与 MicroSD 卡(SPI) |
| Seeed Studio XIAO SAMD21 GPIO 使用方法 | Seeed Studio XIAO SAMD21 与 GPS(UART) |
| Seeed Studio XIAO SAMD21 资源 | 单周期 IOBUS |
特性
- 强大的 MCU:Microchip ATSAMD21G18A Arm® Cortex®-M0+ 处理器,主频 48 MHz,配备 256 KB Flash、32 KB SRAM,并支持原生 USB。
- 扩展 I/O:XIAO SAMD21 Plus 保留标准的 14 引脚 XIAO 布局,并通过 1.27 mm 背面贴片镀铜孔增加 16 个 GPIO,支持 PWM、DAC、I2C、UART、SPI、I2S 和 SWD。
- 集成电源管理:支持锂电池直接连接、板载充电、反灌电流保护以及充电状态指示。
- 灵活开发:兼容 Arduino IDE、PlatformIO、CircuitPython 和 TinyGo。
- 小巧且适配生态:在保持 21 × 17.8 mm 面包板友好 XIAO 外形尺寸的同时,采用标准化的 XIAO Plus 背面布局,便于扩展板和自定义载板设计。
规格
| Product Name | Seeed Studio XIAO SAMD21 | Seeed Studio XIAO SAMD21 Plus |
|---|---|---|
| Chipset | Microchip SAMD21G18 | |
| Processor | Arm® Cortex®-M0+ 处理器,最高运行频率 48 MHz | |
| RAM | 32 KB SRAM | |
| Flash | 256 KB Flash | |
| Interface | GPIO 引脚 ×14 | GPIO 引脚 ×30 |
| Onboard | 用户 LED ×1 | 用户 LED ×1 |
| Battery Management | 无 | 板载 PMIC |
| Power | 输入电压(Type-C):5 V | 输入电压(Type-C):5 V |
| BAT-to-3V3 Backflow Protection | 否 | 是 |
| Working Temperature | -40°C 至 85°C | |
| Dimensions | 21 × 17.8 mm | |
| Software Compatibility | Arduino、PlatformIO、MicroPython、CircuitPython、Zephyr 等 | |
硬件概览
对于通用 I/O 引脚: MCU 的工作电压为 3.3V。如果接入通用 I/O 引脚的电压高于 3.3V,可能会导致芯片损坏。
对于电源引脚: 板载 DC-DC 转换电路能够将 5V 转换为 3.3V,允许通过 VIN 引脚和 5V 引脚使用 5V 电源为设备供电。
必须明确的是,XIAO SAMD21 背面的 VIN 和 GND 焊盘并非用于直接连接电池,尤其不能直接连接可充电锂电池(LiPo/Li-Ion)。该开发板缺少安全运行所需的关键电池管理电路。这些焊盘只是一个旁路板载保护二极管的备用电源输入点。如果你希望使用电池为项目供电,必须使用专用的外部电池管理模块来提供充电和保护,然后将该模块的稳压输出连接到 XIAO 的 5V 引脚。
请注意使用,不要撬起屏蔽罩。
引脚映射
| XIAO 引脚 | 功能 | XIAO SAMD21 | XIAO SAMD21 Plus | 描述 |
|---|---|---|---|---|
| 5V | VBUS | VBUS | VBUS | USB 5 V 电源输入/输出 |
| GND | GND | GND | GND | 地 |
| 3V3 | 3V3_OUT | 3V3_OUT | 3V3_OUT | 3.3 V 电源输出 |
| D0 | A0 / DAC | PA02 | PA02 | GPIO,ADC AIN0,DAC 输出;无硬件 PWM |
| D1 | A1 | PA04 | PA04 | GPIO,ADC AIN4 |
| D2 | A2 | PA10 | PA10 | GPIO,ADC AIN18 |
| D3 | A3 | PA11 | PA11 | GPIO,ADC AIN19 |
| D4 | SDA0 | PA08 | PA08 | GPIO,ADC AIN16,I2C 数据 |
| D5 | SCL0 | PA09 | PA09 | GPIO,ADC AIN17,I2C 时钟 |
| D6 | TX | PB08 | PB08 | GPIO,ADC AIN2,UART 发送 |
| D7 | RX | PB09 | PB09 | GPIO,ADC AIN3,UART 接收 |
| D8 | SCK | PA07 | PA07 | GPIO,ADC AIN7,SPI 时钟 |
| D9 | MISO | PA05 | PA05 | GPIO,ADC AIN5,SPI 数据输入 |
| D10 | MOSI | PA06 | PA06 | GPIO,ADC AIN6,SPI 数据输出 |
| D11 | TX_LED | PA19 | - | XIAO SAMD21 上的内部 TX LED;在 Plus 上未定义 |
| D12 | GPIO | PA18 (RX_LED) | PA28 | Plus 扩展 GPIO |
| D13 | SCL1 | PA17 (USER_LED) | PA17 | Plus 扩展 GPIO 和 I2C1 时钟 |
| D14 | SDA1 | - | PA16 | Plus 扩展 GPIO 和 I2C1 数据 |
| D15 | GPIO | - | PA15 | Plus 扩展 GPIO |
| D16 | GPIO | - | PA14 | Plus 扩展 GPIO |
| D17 | GPIO | - | PA13 | Plus 扩展 GPIO |
| D18 | GPIO | - | PA12 | Plus 扩展 GPIO |
| D19 | I2S_SD | - | PA19 | Plus 扩展 GPIO 和 I2S 数据 |
| D20 | I2S_SCK | - | PA20 | Plus 扩展 GPIO 和 I2S 时钟 |
| D21 | I2S_WS | - | PA21 | Plus 扩展 GPIO 和 I2S 字选择 |
| D22 | GPIO | - | PB10 | Plus 扩展 GPIO |
| D23 | GPIO | - | PB11 | Plus 扩展 GPIO |
| D24 | GPIO | - | PB23 | Plus 扩展 GPIO |
| D25 | GPIO | - | PA23 | Plus 扩展 GPIO |
| D26 | GPIO | - | PB2 | Plus 扩展 GPIO |
| D27 | GPIO | - | PA18 | Plus 扩展 GPIO |
| VBAT_EN | 电池使能 | - | PB2 | Plus 上的电池电源控制 |
| AIN11_VBAT | 电压读取 | - | PB3 | 读取 Plus 上的电池电压 |
| Reset | RESETN | RESETN | RESETN | 低电平有效复位输入,封装引脚 40 |
| TX_LED | LED | PA19 | - | 原始板 TX 指示灯,低电平有效 |
| RX_LED | LED | PA18 | - | 原始板 RX 指示灯,低电平有效 |
| USER_LED | LED | PA17 | - | 原始板用户 LED,低电平有效 |
| POWER_LED | 电源指示灯 | 3V3 | - | 原始板绿色电源 LED;不是 MCU GPIO |
| RGB_LED | WS2812B 数据 | - | PA27 | Plus 可寻址 RGB LED 数据 |
| USER_BUTTON | 按钮 | - | PB22 | Plus 用户按钮,低电平有效 |
| VBAT_EN | 电池 ADC 使能 | - | PB02 | 使能电池电压测量 |
| AIN11_VBAT | 电池 ADC | - | PB03 / AIN11 | 通过 1/2 分压器测量电池电压 |
| CHARGE_LED | 充电指示灯 | - | - | Plus 硬件控制的充电 LED;不是 MCU GPIO |
| SWDIO | SWD 调试 | PA31 | PA31 | 串行线调试数据 |
| SWCLK | SWD 调试 | PA30 | PA30 | 串行线调试时钟 |
进入 Bootloader 模式
适用于 XIAO SAMD21
有时当用户编程过程失败时,Seeed Studio XIAO SAMD21 的端口可能会消失。我们可以通过以下操作来解决这个问题:
- 将 Seeed Studio XIAO SAMD21 连接到你的电脑。
- 使用镊子或短线将图中的 RST 引脚短接两次。
- 橙色 LED 灯会闪烁并点亮。
此时,芯片进入 Bootloader 模式,烧录端口会再次出现。由于 samd21 芯片有两个分区,一个是 Bootloader,另一个是用户程序。产品在出厂时会在系统存储器中烧录一段 bootloader 代码。我们可以通过执行上述步骤在两种模式之间切换。

适用于 XIAO SAMD21 Plus
将 XIAO SAMD21 Plus 连接到你的电脑。连续按下 Reset 按钮两次即可进入 Bootloader 模式。
复位
如果你想复位 Seeed Studio XIAO SAMD21,请执行以下步骤:
- 将 Seeed Studio XIAO SAMD21 连接到你的电脑。
- 使用镊子或短线将 RST 引脚只短接一次
- 橙色 LED 灯会闪烁并点亮。
请注意:板载 LED 的行为与 Arduino 上的是相反的。在 Seeed Studio XIAO SAMD21 上,引脚必须被拉低,而在其他微控制器上则必须被拉高。
中断
Seeed Studio XIAO SAMD21 上的所有引脚都支持中断,但有两个引脚不能同时使用:5 引脚和 7 引脚。关于中断的更多细节请查看这里。
入门指南
硬件
所需材料
- Seeed Studio XIAO SAMD21 x1
- 电脑 x1
- USB Type-C 线 x1
有些 USB 线只能供电,不能传输数据。如果你没有 usb 线,或者不知道你的 usb 线是否可以传输数据,你可以查看 seeed USB type C support USB 3.1。
-
步骤 1. 准备一块 Seeed Studio XIAO SAMD21 和一根 Type-C 线。
-
步骤 2. 将 Seeed Studio XIAO SAMD21 连接到你的电脑。然后黄色电源 LED 应该会亮起。
软件
如果这是你第一次使用 Arduino,我们强烈建议你参考Arduino 入门指南
- 步骤 1. 你需要安装 Arduino 软件。
启动 Arduino 应用程序
双击你之前下载的 Arduino 应用程序(arduino.exe)。
如果 Arduino 软件以其他语言加载,你可以在首选项对话框中更改它。详情请参阅 Arduino Software (IDE) 页面。
- 步骤 2. 打开 Blink 示例
打开 LED 闪烁示例草图:File > Examples >01.Basics > Blink。

- 步骤 3. 将 Seeeduino 添加到你的 Arduino IDE 中
点击 File > Preference,并在 Additional Boards Manager URLs 中填写以下 URL:
https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json

点击 Tools-> Board-> Boards Manager...,在搜索框中输入关键字 "Seeed Studio XIAO SAMD21"。此时会出现 Seeed SAMD Boards。安装它。

XIAO SAMD21 闪烁示例
- 步骤 4. 选择你的开发板和端口
安装好开发板后,点击 Tools-> Board,找到 Seeed Studio XIAO 并选择它。现在你已经在 Arduino IDE 中完成了 Seeed Studio XIAO SAMD21 开发板的设置。

在 Tools | Serial Port 菜单中选择 Arduino 开发板的串口设备。它很可能是 COM3 或更高(COM1 和 COM2 通常保留给硬件串口)。要确认的话,你可以先断开 Arduino 开发板并重新打开菜单;消失的那一项就是 Arduino 开发板。重新连接开发板并选择该串口。

- 步骤 5. 上传程序
现在,只需点击环境中的 Upload 按钮。等待几秒钟,如果上传成功,状态栏中会出现 "Done uploading." 的消息。

上传完成几秒钟后,你应该会看到板子上的 13 号引脚(L)LED 开始闪烁(橙色)。如果是这样,恭喜你!你已经成功运行 Arduino。如果遇到问题,请参考故障排除建议。
最大闪存容量为 8 KB。更多信息请参考资源部分中的 ATSAMD21G18A-MU 数据手册。
XIAO SAMD21 Plus 闪烁示例
在 XIAO SAMD21 Plus 上,L(LED)引脚已被移除。它被 RGB_LED 取代,通过引脚 PA27 控制。
‑ 将目标开发板更改为 XIAO M0 Plus。

- 安装 Adafruit_NeoPixel 库并更新到最新版本。

‑ 将代码替换为下面的代码片段。RGB_LED 的引脚是 PA27,已被重新定义为 PIN_LED_RGB。
如果以过高亮度运行,RGB LED 可能会导致眼睛疲劳或损伤;建议佩戴适当的眼部防护。
#include <Adafruit_NeoPixel.h>
#define NUMPIXELS 1
Adafruit_NeoPixel pixels(NUMPIXELS, PIN_NEOPIXEL, NEO_GRB + NEO_KHZ800);
void setup() {
pixels.begin();
pinMode(NEOPIXEL_POWER, OUTPUT);
digitalWrite(NEOPIXEL_POWER, HIGH);
// Set overall brightness (0~255)
// Recommended eye-friendly range: 10~50
pixels.setBrightness(50);
}
void loop() {
pixels.clear();
pixels.setPixelColor(0, pixels.Color(15, 25, 205));
pixels.show();
delay(400);
pixels.clear();
pixels.setPixelColor(0, pixels.Color(103, 25, 205));
pixels.show();
delay(400);
pixels.clear();
pixels.setPixelColor(0, pixels.Color(233, 242, 205));
pixels.show();
delay(400);
pixels.clear();
pixels.setPixelColor(0, pixels.Color(233, 23, 23));
pixels.show();
delay(400);
pixels.clear();
pixels.setPixelColor(0, pixels.Color(12, 66, 101));
pixels.show();
delay(400);
pixels.clear();
pixels.show();
delay(500);
}
‑ 点击 Upload 烧录程序。完成后,RGB‑LED 将会点亮。

最大闪存容量为 8 KB。更多信息请参考资源部分中的 ATSAMD21G18A-MU 数据手册。
引脚复用
我们不需要自己配置引脚,使用引脚之后,你可以直接调用函数。
数字输入和输出
- 使用引脚 6 作为数字引脚:
const int buttonPin = 6; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin
int buttonState = 0; // variable for reading the pushbutton status
void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}
void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
} else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}
AnalogRead
- 使用引脚 6 作为模拟引脚:
void setup() {
// declare the ledPin as an OUTPUT:
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the value from the sensor:
sensorValue = analogRead(sensorPin);
// turn the ledPin on
digitalWrite(ledPin, HIGH);
// stop the program for <sensorValue> milliseconds:
delay(sensorValue);
// turn the ledPin off:
digitalWrite(ledPin, LOW);
// stop the program for for <sensorValue> milliseconds:
delay(sensorValue);
}
串口
- 使用引脚 6 作为 UART 的 TX 引脚(UART 的 RX 引脚为引脚 7):
void setup() {
Serial1.begin(115200);
while (!Serial);
}
void loop() {
Serial1.println("Hello,World");
delay(1000);
}
I2C
- 使用引脚 5 作为 IIC 的 SCL 引脚(IIC 的 SDA 引脚为引脚 4):
// Wire Master Writer
// by Nicholas Zambetti <http://www.zambetti.com>
// Demonstrates use of the Wire library
// Writes data to an I2C/TWI slave device
// Refer to the "Wire Slave Receiver" example for use with this
// Created 29 March 2006
// This example code is in the public domain.
#include <Wire.h>
void setup()
{
Wire.begin(); // join i2c bus (address optional for master)
}
byte x = 0;
void loop()
{
Wire.beginTransmission(4); // transmit to device #4
Wire.write("x is "); // sends five bytes
Wire.write(x); // sends one byte
Wire.endTransmission(); // stop transmitting
x++;
delay(500);
}
SPI
- 使用引脚 8 作为 SPI 的 SCK 引脚(SPI 的 MISO 引脚为引脚 9,MOSI 引脚为引脚 10):
#include <SPI.h>
const int CS = 7;
void setup (void) {
digitalWrite(CS, HIGH); // disable Slave Select
SPI.begin ();
SPI.setClockDivider(SPI_CLOCK_DIV8);//divide the clock by 8
}
void loop (void) {
char c;
digitalWrite(CS, LOW); // enable Slave Select
// send test string
for (const char * p = "Hello, world!\r" ; c = *p; p++) {
SPI.transfer (c);
}
digitalWrite(CS, HIGH); // disable Slave Select
delay(2000);
}
QTouch
关于如何使用 QTouch,我们提供了一个示例项目:How to Make a Fruit Piano on Seeed Studio XIAO SAMD21 ’s Q-Touch Function。
模拟输入和输出
虽然它仍然具有基于 PWM 的“模拟输出”,但 SAMD21 还提供了真正的模拟输出,即数模转换器(DAC)。该模块可以产生 0 到 3.3V 之间的模拟电压。它可以用来产生更自然声音的音频,或者作为一种“数字电位器”来控制模拟设备。
DAC 仅在 Arduino 引脚 A0 上可用,并通过 analogWrite(A0, <value>) 控制。DAC 最多可以设置为 10 位分辨率(请确保在 setup 中调用 analogWriteResolution(10)),这意味着 0 到 1023 之间的数值会将电压设置在 0 到 3.3V 之间的某个值。
除了 DAC 之外,SAMD21 的 ADC 通道也不同于 ATmega328:它们支持最高 12 位分辨率。这意味着模拟输入值可以在 0-4095 之间变化,对应 0 到 3.3V 之间的电压。要以 12 位模式使用 ADC,请确保在 setup 中调用 analogReadResolution(12)。
串口绘图 DAC
下面是一个同时演示 DAC 和 ADC 的示例。要搭建这个实验,将 A0 连接到 A1 —— 我们用模拟电压驱动 A0,然后用 A1 读取该电压。这个电路是我们在教程中用过的最简单的电路:

Seeed Studio XIAO SAMD21 使用的是 Seeed Studio XIAO SAMD21 expansion board
这个示例会在 A0 上产生一个 0 到 3.3V 之间变化的正弦波输出。然后使用 A1 将该输出读入其 ADC,并将其转换为 0 到 3.3V 之间的电压。
当然,你可以打开串口监视器来查看电压值的流动。但如果通过文本很难想象正弦波的形状,可以通过 Tools > Serial Plotter 打开 Arduino 新的串口绘图器。


感谢 Aleksei Tertychnyi 提交代码,所有相关功能均由他开发并贡献。
#define DAC_PIN A0 // Make code a bit more legible
float x = 0; // Value to take the sin of
float increment = 0.02; // Value to increment x by each time
// Frequency of sine wave is about 1.37 Hz
void setup()
{
analogWriteResolution(10); // Set analog out resolution to max, 10-bits
analogReadResolution(12); // Set analog input resolution to max, 12-bits
Serial.begin(9600);
}
void loop()
{
// Generate a voltage value between 0 and 1023.
// Let's scale a sin wave between those values:
// Offset by 511.5, then multiply sin by 511.5.
int dacVoltage = (int)(511.5 + 511.5 * sin(x));
x += increment; // Increase value of x
// Generate a voltage between 0 and 3.3V.
// 0= 0V, 1023=3.3V, 512=1.65V, etc.
analogWrite(DAC_PIN, dacVoltage);
// Now read A1 (connected to A0), and convert that
// 12-bit ADC value to a voltage between 0 and 3.3.
float voltage = analogRead(A1) * 3.3 / 4096.0;
Serial.println(voltage); // Print the voltage.
delay(1); // Delay 1ms
}
结果

电池使用
只有 XIAO SAMD21 Plus 在其背面配备了 BAT 电池连接器,请注意。
XIAO SAMD21 Plus 可以使用 3.7V 锂电池作为电源输入。你可以参考下图了解接线方式。

焊接时请务必注意不要让正负极短路,以免烧毁电池和设备。如果电池本身带电,切勿直接将其焊接到电路板上,否则可能烧毁电路板。在电路上电的情况下发生短路风险极大,建议使用适配器。
电池电压读取示例
根据原理图,SGM40567-4.2XG/TR 提供单节锂电池充电功能,充电电流约为 200 mA。在充电过程中,Charge_LED 会闪烁。
电池电压测量由 TPS22916CNYFPR 负载开关通过 PB2/VBAT_EN 控制,从而降低待机功耗。电池电压经电阻分压为一半后,通过 PB3/AIN11_VBAT ADC 引脚进行测量。

电池电压是通过电阻分压电路进行测量的。ADC 读取到的电压是实际电池电压的一半,因此软件必须将 ADC 测量值乘以 2 才能得到实际电池电压。
在 Arduino 内核中,PB02 和 PB03 分别映射为引脚编号 31 和 32。按如下方式进行定义:
// VBAT_EN on PB02
#define PIN_VBAT_EN (31u)
// AIN11_VBAT on PB03
#define PIN_VBAT_ADC (32u)
电池读取示例
constexpr float ADC_VREF = 3.3f;
constexpr float ADC_MAX = 4095.0f;
constexpr float DIVIDER_RATIO = 2.0f; // R5 = R6 = 10 kΩ
float readBatteryVoltage() {
digitalWrite(PIN_VBAT_EN, HIGH);
delay(10);
analogRead(PIN_VBAT_ADC); // Discard a stale reading
uint32_t sum = 0;
constexpr int samples = 16;
for (int i = 0; i < samples; i++) {
sum += analogRead(PIN_VBAT_ADC);
delay(2);
}
digitalWrite(PIN_VBAT_EN, LOW);
float adcRaw = sum / static_cast<float>(samples);
float adcVoltage = adcRaw * ADC_VREF / ADC_MAX;
return adcVoltage * DIVIDER_RATIO;
}
void setup() {
Serial.begin(115200);
pinMode(PIN_VBAT_EN, OUTPUT);
digitalWrite(PIN_VBAT_EN, LOW);
analogReadResolution(12); // SAMD21 ADC: 0–4095
}
void loop() {
float batteryVoltage = readBatteryVoltage();
Serial.print("Battery: ");
Serial.print(batteryVoltage, 3);
Serial.println(" V");
delay(1000);
}
对于低功耗应用,在完成电池电压测量后,请关闭 BAT_EN,以减少电阻分压电路带来的静态功耗。
- 电池充电时,Charge_LED 会闪烁。

- 电池电压测量结果:锂离子电池的实测电压可能与电池上标注的标称值不同,请始终以实际测量值为准。

示例应用
-
如何使用 Raspberry Pi 修复损坏的 xiao。感谢 John_Doe 的分享。
资源
XIAO SAMD21
硬件设计
- 📄[数据手册] Atmel SAMD21G18 数据手册
- 📄[原理图] XIAO SAMD21 原理图
- 🗃️[PCB 设计文件]
- 🗃️[PCB 设计库]
- 📄[引脚分布表] XIAO SAMD21 引脚分布表
结构设计
- 📄[2D 尺寸] DXF 格式的 XIAO 尺寸图
- 📄[3D 模型] XIAO SAMD21 3D 模型
软件与工具
- 📄[出厂固件] XIAO SAMD21 出厂固件
XIAO SAMD21 Plus
硬件设计
- 📄[数据手册] Atmel SAMD21G18 数据手册
- 📄[原理图] XIAO SAMD21 Plus 原理图
- 🗃️[PCB 设计文件]
- 🗃️[PCB 设计库]
- 📄[引脚分布表] XIAO SAMD21 Plus 引脚分布表
结构设计
- 📄[2D 尺寸] DXF 格式的 XIAO 尺寸图
- 📄[3D 模型] XIAO SAMD21 Plus 3D 模型
课程资源

技术支持与产品讨论
感谢你选择我们的产品!我们将为你提供多种支持,确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。



