这是MicroPython最新开发分支的文档,可能涉及发布版本中不可用的功能。

如果您正在查找特定版本的文档,请使用左侧的下拉菜单并选择所需版本。

SAMD端口的一般信息

SAMD21/SAMD51 MCU系列是MicroChip制造的高性能设备系列。SAMD21设备基于ARM M0+内核,SAMD51设备基于ARMCortex M4内核。它们为构建中小型设备提供了许多片上I/O单元。

板的多样性

有许多来自不同来源的模块和板,它们携带SAMD21/SAMD51芯片。MicroPython的目标是提供一个通用端口,它可以在尽可能多的板/模块上运行,但可能存在局限性。Adafruit ItsyBitsy M0 Express、Adafrupt Feather M4 Express和Adafruft ItsyBitsy M4 Express开发板作为端口的参考(例如,对其进行测试)。对于您正在使用的任何电路板,请确保您有数据表、示意图和其他参考材料,以便您可以查找任何电路板特定的功能。

端口目前支持以下板:

  • ADAFRUIT FEATHER M0 EXPRESS

  • ADAFRUIT FEATHER M4 EXPRESS

  • ADAFRUIT ITSYBITSY M0 EXPRESS

  • ADAFRUIT ITSYBITSY M4 EXPRESS

  • ADAFRUIT TRINKET M0

  • MINISAM M4

  • SAMD21 XPLAINED PRO

  • SEEED WIO TERMINAL

  • SEEED XIAO

为了制作通用SAMD端口并支持尽可能多的板,做出了以下设计和实施决策:

  • GPIO引脚编号基于电路板编号。请手边有板的手册/引脚图,以查找板引脚与实际SAMD21/SAMD51引脚之间的对应关系。对于上面列出的电路板,可以在Pinout for the SAMD machine modules中找到电路板引脚号和GPIO号之间的关系。

  • MicroPython可以使用的引脚仅限于电路板定义文件中列出的引脚。

技术规范和SoC数据表

SAMD21/SAMD51芯片的数据表和其他参考材料可从供应商网站获得:https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/32-bit-mcus/sam-32-bit-mcus它们是芯片技术规格、功能、操作模式、内部功能等的主要参考。

为方便您,以下提供了一些技术规范:

SAMD21:

  • 架构:ARM Cortex M0+

  • CPU频率:最高48MHz

  • 可用总RAM:高达32 kB(见表)

  • 内部FlashROM:高达256 kB某些板提供额外的外部SPI闪存。

  • GPIO:最多52个(GPIO与其他功能复用,包括外部FlashROM、UART等)

  • UART:最多6个串行设备,可用于UART、SPI或I2C。

  • I2S:1个I2S接口

  • ADC:一个具有16个通道的12位SAR ADC转换器。

  • 编程:从USB使用BootROM引导加载程序。

SAMD51:

  • 架构:ARM Cortex M4

  • CPU频率:高达120MHz

  • 可用总RAM:高达256 kB

  • 内部FlashROM:高达1 MB某些板提供额外的外部SPI闪存。

  • GPIO:最多99个(GPIO与其他功能复用,包括外部FlashROM、UART等)

  • UART:最多8个串行设备,可用于UART、SPI或I2C。

  • I2S:1个I2S接口

  • ADC:双12位SAR ADC转换器,16通道。

  • 编程:从USB使用BootROM引导加载程序。

有关更多信息,请参阅优秀的SAMD21/SAMD51数据表或参考手册。

目前,MicroPython的SAM21端口需要256kB闪存,其中64kB用于小型文件系统。SAM51端口需要512 kB的闪存,其中超过384kB的所有闪存都用于文件系统。有些板有额外的闪存,可以用作额外的文件空间。