from machine import Pin
from utime import sleep

print("王天阔 202110733224")

led_pins = [Pin(32, Pin.OUT), Pin(25, Pin.OUT), Pin(33, Pin.OUT), Pin(13, Pin.OUT), Pin(12, Pin.OUT), Pin(26, Pin.OUT), Pin(14, Pin.OUT), Pin(4, Pin.OUT), Pin(22, Pin.OUT), Pin(2, Pin.OUT), Pin(15, Pin.OUT), Pin(18, Pin.OUT), Pin(21, Pin.OUT), Pin(19, Pin.OUT)]

# 定义按键
button = Pin(35, Pin.IN, Pin.PULL_DOWN)  # 假设按键连接到引脚16

def heartbeat():
    middle = len(led_pins) // 2
    for i in range(middle + 1):
        led_pins[i].on()
        led_pins[-(i + 1)].on()
        sleep(0.5)

def blink():
    for pin in led_pins:
        pin.on()
    sleep(0.2)
    for pin in led_pins:
        pin.off()
    sleep(0.2)

# 新增函数:切换闪烁模式
def toggle_blink_mode():
    global is_blinking  # 声明全局变量
    is_blinking = not is_blinking  # 取反

# 主循环
is_blinking = False  # 初始时不闪烁
while True:
    # 检测按键状态
    if button.value() == 1:  # 按键按下
        toggle_blink_mode()  # 切换闪烁模式
        sleep(0.2)  # 稍微延时一下,避免连续切换

    # 根据闪烁模式执行相应操作
    if is_blinking:
        heartbeat()
    else:
        blink()
esp:VIN
esp:GND.2
esp:D13
esp:D12
esp:D14
esp:D27
esp:D26
esp:D25
esp:D33
esp:D32
esp:D35
esp:D34
esp:VN
esp:VP
esp:EN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
led1:A
led1:C
led2:A
led2:C
keypad1:R1
keypad1:R2
keypad1:R3
keypad1:R4
keypad1:C1
keypad1:C2
keypad1:C3
keypad1:C4
led3:A
led3:C
led4:A
led4:C
led5:A
led5:C
led6:A
led6:C
led7:A
led7:C
led8:A
led8:C
led9:A
led9:C
led10:A
led10:C
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
r4:1
r4:2
r5:1
r5:2
r6:1
r6:2
r7:1
r7:2
r8:1
r8:2
r9:1
r9:2
r10:1
r10:2
led11:A
led11:C
led12:A
led12:C
led13:A
led13:C
led14:A
led14:C
r11:1
r11:2
r12:1
r12:2
r13:1
r13:2
r14:1
r14:2
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r