1.创建命令处理函数
首先,定义一些可以通过用户命令执行的函数。例如,我们可以实现一些简单的命令,如获取设备状态、执行 LED 控制等。
import machine
import time
# 定义一些简单的命令处理函数
def led_on():
led = machine.Pin(25, machine.Pin.OUT) # 使用内置LED
led.on()
print("LED is turned ON.")
def led_off():
led = machine.Pin(25, machine.Pin.OUT)
led.off()
print("LED is turned OFF.")
def get_status():
print("Device is running normally.")
2. 创建命令解析器
接下来,创建一个命令解析器,它将读取用户输入并调用相应的命令处理函数。
def command_parser(command):
command = command.strip().lower() # 去除首尾空格并转换为小写
if command == "led on":
led_on()
elif command == "led off":
led_off()
elif command == "status":
get_status()
elif command == "exit":
print("Exiting command interface.")
return False
else:
print("Unknown command:", command)
return True!
3. 主循环实现命令接口
在主程序中,创建一个循环,等待用户输入命令并处理它们。
def main():
print("Welcome to Pico W Command Interface!")
print("Available commands: 'led on', 'led off', 'status', 'exit'")
while True:
command = input("Enter command: ") # 获取用户输入
if not command_parser(command): # 如果返回 False,则退出
break
print("Goodbye!")
# 运行主程序
main()
4. 完整代码
将上述所有部分组合在一起,形成完整的代码如下:
import machine
import time
# 定义一些简单的命令处理函数
def led_on():
led = machine.Pin(25, machine.Pin.OUT) # 使用内置LED
led.on()
print("LED is turned ON.")
def led_off():
led = machine.Pin(25, machine.Pin.OUT)
led.off()
print("LED is turned OFF.")
def get_status():
print("Device is running normally.")
def command_parser(command):
command = command.strip().lower() # 去除首尾空格并转换为小写
if command == "led on":
led_on()
elif command == "led off":
led_off()
elif command == "status":
get_status()
elif command == "exit":
print("Exiting command interface.")
return False
else:
print("Unknown command:", command)
return True
def main():
print("Welcome to Pico W Command Interface!")
print("Available commands: 'led on', 'led off', 'status', 'exit'")
while True:
command = input("Enter command: ") # 获取用户输入
if not command_parser(command): # 如果返回 False,则退出
break
print("Goodbye!")
# 运行主程序
main()
5. 使用说明
-
通过串口连接到 Pico W,看到欢迎消息和可用命令列表。
-
输入命令,如 led on 或 led off 来控制 LED,输入 status 来查看设备状态,输入 exit 来退出命令界面。