2025 Make Blocks阶段2 - 复刻Seeed Studio XIAO SAMD21核心板
该项目使用了ATSAMD21G18A-AU,实现了Seeed Studio XIAO SAMD21核心板的设计,它的主要功能为:原设计使用的是QFN48封装的器件,为方便自己手动焊接,使用TQFP-48封装。
标签
嵌入式
开发板
USB
Make Blocks
最小核心板
Tide
更新2025-08-14
17
KiCad文件
全屏

任务介绍

本次活动我选择的任务是 MCU(2) - 复刻Seeed Studio XIAO SAMD21核心板

模块介绍

根据任务要求我参照XIAO SAMD21重新设计一款MCU核心板,保证了:

  • 使用TQFP-48封装的器件替换掉原设计中的QFN-48封装的器件,器件的资源跟原设计一致,只有封装发生了变化
  • 用到的MCU芯片需在DigiKey官网 上有货且正常售卖
  • 核心板上的其它器件以及管脚连接与原设计完全一致
  • 核心板的样式、尺寸跟原设计一致

ATSAMD21G18A-AU芯片DigiKey链接:ATSAMD21G18A-AU Microchip Technology | 集成电路(IC) | DigiKey

模块主要性能指标和管脚定义

主要性能指标

类型

MCU核心板

核心芯片

ATSAMD21G18A-AU

内核

Arm Cortex-M0+

时钟频率

48MHz

SRAM

32KB

Flash

256KB

IO数量

14

板卡尺寸

21mm x 17.8mm

供电电压

3.3V

输出信号电平

3.3V

管脚定义

管脚定义和原Seeed Studio XIAO SAMD21核心板一致

pir


引脚编号

引脚名称

功能描述

DAC/D0/A0

DAC 输出 / 数字输入输出 / 模拟输入

具有 DAC 功能,可输出真正的模拟信号;也可作为数字输入输出;也可作为模拟输入

D1/A1

数字输入输出 / 模拟输入

可作为数字输入输出;也可作为模拟输入

D2/A2

数字输入输出 / 模拟输入

可作为数字输入输出;也可作为模拟输入

D3/A3

数字输入输出 / 模拟输入

可作为数字输入输出;也可作为模拟输入

SDA/D4/A4

I²C 通信 (数据线)/数字输入输出 / 模拟输入

I²C 总线的数据线,用于连接 I²C 设备;也可作为数字输入输出;也可作为模拟输入

SCL/D5/A5

I²C 通信 (时钟线)/数字输入输出 / 模拟输入

I²C 总线的时钟线,用于连接 I²C 设备;也可作为数字输入输出;也可作为模拟输入

TX/D6/A6

串口通信 (发送)/数字输入输出 / 模拟输入

UART 串口的发送线,用于发送数据;也可作为数字输入输出;也可作为模拟输入

RX/D7/A7

串口通信 (接收)/数字输入输出 / 模拟输入

UART 串口的接收线,用于接收数据;也可作为数字输入输出;也可作为模拟输入

SCK/D8/A8

SPI 通信 (时钟线)/数字输入输出 / 模拟输入

SPI 总线的时钟线,用于同步数据传输;也可作为数字输入输出;也可作为模拟输入

MISO/D9/A9

SPI 通信 (主输入从输出线)/数字输入输出 / 模拟输入

SPI 总线的主输入从输出线,用于接收数据从 SPI 设备;也可作为数字输入输出;也可作为模拟输入

MOSI/D10/A10

SPI 通信 (主输出从输入线)/数字输入输出 / 模拟输入

SPI 总线的主输出从输入线,用于发送数据到 SPI 设备;也可作为数字输入输出;也可作为模拟输入

3V3

电源

提供 3.3V 电源

5V

电源

提供 5V 电源

GND

作为电路的公共地

设计思路

  1. 场景定位
    • 超小型、低功耗、通用型 Cortex-M0+ 控制器模块,可直接贴片或插面包板。
    • 兼容 Arduino/CircuitPython,方便教育、可穿戴、传感器节点等快速原型。
  2. 设计目标
    • 21 mm × 17.8 mm 极限尺寸(≈1 枚硬币)。
    • 单面器件、背面裸铜邮票孔,便于回流焊贴片。
    • 全引脚引出 14×GPIO(含 11×ADC、1×DAC、10×PWM、1×I²C、1×SPI、1×UART、SWD)。
    • 一颗 Type-C 口完成供电 + 原生 USB CDC 下载/调试。
    • 板载 32.768 kHz 晶振 + PLL 提供 48 MHz 主时钟,无需外部时钟源即可工作。
  3. 可靠性
    • 预留 SWD 测试点与 Reset 测试点,方便量产离线烧录;
    • 邮票孔 + 1.27 mm 排针双兼容,适配不同组装方式。


关键器件选型表

功能

选型型号 / 规格

选型理由

MCU

ATSAMD21G18A-AU (TQFP-48)

和官方 XIAO PIN脚定义相同,为TQFP48封装,方便焊接。

USB 连接器

Type-C 16 Pin

16 Pin 版本兼容完整 CC/SBU 信号,可正反插,便于量产测试

3.3 V LDO

XC6206P332MR (SOT-23-3)

超低静态电流 1 µA,150 mA 输出,外围仅需 10 µF 去耦,成本低、体积小

晶振

FC-12M 32.768 kHz (2.0 × 1.2 mm)

负载电容 12 pF,提供精确温度的时钟信号

去耦电容

100 nF X7R 0402 × 3 + 1µF X7R 0402 × 1

电源脚就近布置,抑制高频噪声

LED

0402 LED × 4

限流 电阻1 kΩ:

Power、User(PA17)、TX、RX指示灯

复位

10 kΩ 上拉 + 100 nF 电容

短接0.8 mm 圆焊盘 (RST/GND)进行RC复位,节省按键空间

扩展接口

2×7 Pin 2.54 mm 排针

共 14 Pin,含 SWD/GPIO/电源




image.png

原理图和PCB模块介绍

image.png

原理图

image.png

PCB

电源管理部分

稳压电路核心板中包含了一个稳压电路,用于将USB供电转换为核心板所需的3.3V稳定电压。采用了一个低压差线性稳压器XC6206P332MR来实现,以确保为微控制器和其他元件提供干净、稳定的电源。

电源去耦电容在电源引脚附近会放置去耦电容,用于滤除电源线上的高频噪声,保证电源的稳定性,提高电路的抗干扰能力。

时钟电路

SAMD21微控制器通常具有内部时钟源,但在某些情况下,为了获得更高的时钟精度和稳定性,可能会使用外部晶振或时钟发生器。原理图中使用了一个32.768K的无源晶振连接到SAMD21的时钟输入引脚。

复位电路

包含一个复位电路,由一个电容和​上拉电阻组成,用于在需要时手动复位微控制器,确保其重新启动并从初始状态开始运行。

image.png

3D效果图

XIAO SAMD21核心板的尺寸仅为19.2mm x 15.6mm,便于集成到各种小型项目和设备中。这个板子上有4个LED,分别是:

用户LED:板上有一个用户LED,连接到PA17,可用于指示程序运行状态或作为简单的输出指示器,开发者可通过编程控制其亮灭。

电源LED:板上有一个电源LED,用于指示核心板的电源状态,当核心板正常供电时,该LED会亮起,显示电源正常。

串口下载LED:板上有两个LED用于串口下载,分别是RX和TX LED。这两个LED在串口通信时会闪烁,表示数据正在传输或接收。它们也可以通过编程进行控制。


PCB我重新打板了一次,原因是我用的官方的Type-C 接口PCB封装库有问题,他们的孔径更小,焊接不上。现在我已经重新修改好了,具体文件参考附件

调试软件

Seed XIAO SAMD21 的 ATSAMD21G18A 在硬件复位后默认从 0x0000 0000 取第一条指令。若 Flash 中没有 USB Bootloader,MCU 便无法枚举为 USB CDC/MSC 设备。所以我们要为焊接好的板子烧录Bootloader

烧录 Seed XIAO SAMD21 Bootloader 的标准流程可归纳为 4 个步骤

1、准备烧录环境

硬件:SWD 调试器(J-Link / CMSIS-DAP / ATMEL-ICE)、待烧录的开发板、杜邦线

我使用的是XIAO SAMD21(已烧录 Arduino Bootloader),可以通过以下配置把它配置为DAPLink 调试器:

1)从 Seeed 官方 Wiki 下载适用于 XIAO SAMD21 的 DAPLink 固件simple_daplink_xiao.uf2

2)使用数据线连接 XIAO 到电脑 XIAO 上的 RESET 和GND焊盘快速短接两次,此时电脑会识别出一个名为 “Arduino” 的 USB 驱动器(U盘)

3)将下载的 simple_daplink_xiao.uf2 文件拖入该驱动器,烧录完成后,XIAO 会自动重启,并识别为 DAPLink CMSIS-DAP 设备


软件:OpenOCD 或 pyOCD,以及官方的Bootloader文件:bootloader-XIAO_m0-v3.7.0-33-g90ff611-dirty.bin

我使用的软件是pyOCD(pip 安装,轻量):

1)安装:已装 Python 3.6+(Python 官网下载并勾选“Add to PATH”)。

打开 CMDPowerShell,执行:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U pyocd

安装完成后验证:

pyocd --version

2、连接 SWD 接口

将调试器的排针引脚接到要烧录的 XIAO 板对应的SWDIO、SWCLK、GND、3V3测试点和电源脚 。

XIAO to XIAO

3、擦除并写入 Bootloader

由于pyOCD 默认并没有内置 ATSAMD21G18 的完整支持,需要用 CMSIS-Pack 来补全。需要通过Microchip 官方包索引页下载:Microchip SAMD21 系列器件支持(3.6.144)

然后win+R用命令行烧录:

pyocd flash ^
--pack "C:\Users\Tide\Desktop\Seeeduino XIAO\Microchip.SAMD21_DFP.3.6.144.atpack" ^
-t atsamd21g18a ^
"C:\Users\Tide\Desktop\Seeeduino XIAO\ArduinoCore-samd-master\bootloaders\XIAOM0\bootloader-XIAO_m0-v3.7.0-33-g90ff611-dirty.bin"

pyocd flash 子命令:把文件烧录进芯片 Flash

pack 指向你下载的 Microchip.SAMD21_DFP.3.6.144.atpack 文件
target 目标芯片型号,与Pack 里的名字必须一致,为 atsamd21g18a
最后一个参数 待烧录文件bootloader-XIAO_m0-v3.7.0-33-g90ff611-dirty.bin 路径

写入成功截图

4、验证 Bootloader 功能

断开调试器,双击 RESET

电脑应出现 “Arduino” 或 “XIAO” U 盘

打开 Arduino IDE → 选 Seeeduino XIAO (SAMD21) → 上传 Blink 示例,LED 闪烁即成功

LED闪烁

心得体会

完成这个复刻Seeed Studio XIAO SAMD21核心板的项目是一次宝贵的学习和实践经历。在整个过程中,我不仅加深了对Cortex-M0+微控制器的理解,还掌握了更多关于电路设计、PCB布局和USB通信的知识。从最初的设计思路到最终的产品实现,每一个环节都充满了挑战,但同时也带来了成长。

在设计阶段,我学会了如何根据项目需求选择合适的器件,并考虑封装、尺寸和兼容性等因素。在PCB设计过程中,我意识到了细节的重要性,比如焊盘设计、电源去耦和信号完整性等,这些都直接影响到电路的性能和可靠性。调试过程中,我学会了使用各种工具和软件,比如pyOCD,来验证和调试硬件。

这个项目不仅提升了我的技术能力,也增强了解决复杂问题的信心,为我未来的电子设计之路打下了坚实的基础。


附件下载
Seeeduino XIAO软件包.zip
烧录bootloader用到的软件
Seeeduino XIAO_V2.zip
PCB工程文件
团队介绍
个人
评论
0 / 100
查看更多
猜你喜欢
2025 Make Blocks阶段1 - MCU(2) - 复刻Seeed Studio XIAO SAMD21核心板该项目使用了KiCad软件,实现了复刻Seeed Studio XIAO SAMD21核心板的设计,它的主要功能为:基于 ATSAMD21G18A-AU(TQFP-48封装)实现​​高性能实时信号处理​​,通过​​12-bit ADC(5.2MSPS)​​ 完成多路数据采集,搭配​​128KB SRAM​​缓存与​​DSP指令集​​进行FFT等实时运算;​​30个可编程IO​​通过​​DIP40蛇形孔​​直连小脚丫FPGA扩展板,支持SPI/I²C/USB通信;板载​​双供电模式​​(USB Type-C输入/3.3V 500mA输出)与​​3.0V低噪LDO​​确保ADC精度;​​双LED指示​​电源状态与用户可编程信号,并通过​​SWD接口​​实现快速调试,完全兼容原设计尺寸(18×52mm)与示波器开发需求。。
sren
20
2025 Make Blocks阶段1 - 复刻Seeed Studio XIAO SAMD21核心板该项目使用了ATSAMD21G18A-AU,实现了Seeed Studio XIAO SAMD21核心板的设计,它的主要功能为:原设计使用的是QFN48封装的器件,为方便自己手动焊接,使用TQFP-48封装。
Tide
47
2025 Make Blocks阶段2 - MCU(2) - 复刻Seeed Studio XIAO SAMD21核心板该项目使用了ATSAMD21G18A-AU,实现了XIAO SAMD21相似的设计,它的主要功能为:具有 14 个引脚,可用于 11 个数字接口、11 个模拟接口、10 个 PWM 接口(d1-d10)、1 个 DAC 输出引脚 D0、1 个 SWD 焊盘接口、1 个 I2C 接口、1 个 SPI 接口、1 个 UART 接口、串行通信指示灯(T/R)、通过引脚复用的闪烁灯(L)。
豆腐Orz
11
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号