#!/usr/bin/env python
# -*- coding: utf-8 -*-
from i2c_lcd1602 import I2C_LCD1602
from machine import Pin, I2C
import time
i2c = I2C(0, scl=Pin(21), sda=Pin(20))
LCD = I2C_LCD1602(i2c)
config={
"PWM":[50,0,100],#PWM 当前值 最小值 最大值
"ACCEL":[500,50,30000],#加速度 当前值 最小值 最大值
"FIXED":[5000,10,60000]#运行时间 当前值 最小值 最大值
}
# 初始化按钮和 LED
button = machine.Pin(10, machine.Pin.IN, machine.Pin.PULL_UP) # 设置为上拉输入
led = machine.Pin(3, machine.Pin.OUT)
def main():
while True:
if button.value() == 0: # 检测按钮是否按下
while button.value() == 0: # 等待按钮松开
time.sleep_ms(10)
led.toggle() # 更新 LED 状态
usb = machine.USBDevice()
if usb.isconnected():
print("USB 已连接")
else:
print("USB 未连接")
def update_config():
keys = list(config.keys())
print("\n可修改的参数:")
for i, key in enumerate(keys):
print(f"{i + 1}. {key}: {config[key][0]} (范围: {config[key][1]} - {config[key][2]})")
try:
index = int(input("\n请输入要修改的参数序号: ")) - 1
if 0 <= index < len(keys):
key = keys[index]
new_value = int(input(f"请输入 {key} 的新值 ({config[key][1]} - {config[key][2]}): "))
if config[key][1] <= new_value <= config[key][2]:
config[key][0] = new_value
print(f"{key} 已更新为 {new_value}")
else:
print(f"输入值超出范围 ({config[key][1]} - {config[key][2]}),未修改 {key}。")
else:
print("输入的序号无效。")
except ValueError:
print("输入无效,请输入数字。")
print("\n更新后的配置:")
for key, value in config.items():
print(f"{key}: {value[0]}")
if __name__ == '__main__':
main()