You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

STM32F722ZE MicroPython报错:Pin(PC13)不存在,求解决方案

解决STM32F722ZE MicroPython中PC13引脚访问报错的方案

方案一:使用引脚硬件编号直接访问

STM32引脚可通过十进制硬件编号直接调用,计算规则为:

  • 端口A:0~15
  • 端口B:16~31
  • 端口C:32~47
  • 后续端口依次递增16个编号

PC13属于端口C第13位,对应硬件编号为 32 + 13 = 45,修改代码如下:

import pyb

def main():
    green_led = pyb.Pin('D33', mode=pyb.Pin.OUT_PP)
    # 用硬件编号45替代PC13
    button = pyb.Pin(45, mode=pyb.Pin.IN, pull=pyb.Pin.PULL_DOWN)

    while True:
        green_led.value(0 if button.value() else 1)

main()

方案二:改用machine模块访问引脚

部分STM32的MicroPython固件对machine.Pin兼容性更好,支持直接使用PC13格式命名,修改代码如下:

from machine import Pin

def main():
    green_led = Pin('D33', Pin.OUT_PP)
    button = Pin('PC13', Pin.IN, Pin.PULL_DOWN)

    while True:
        green_led.value(0 if button.value() else 1)

main()

方案三:查找开发板引脚别名

检查开发板丝印或配套MicroPython固件文档,找到PC13对应的板载引脚别名(如Arduino风格的Dxx编号),替换代码中的PC13即可。例如部分STM32开发板会将PC13映射为D2或KEY。

内容的提问来源于stack exchange,提问作者Sashish Acharya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 14:59:56