第 7 / 8 章

按键控轮与多模块组合

在一个主循环里同时处理按键、电机与超声灯光。

教程首页 专题页

概要:在一个主循环里同时处理按键、电机与超声灯光。
核心能力:多模块主循环 · 可见结果:左右键控轮 + 超声灯

本章代码目录: code/chapter-07/

上传示例:mpremote connect $PORT cp code/chapter-07/*.py :(在章节目录外按实际路径调整)

学习目标

  1. 把第 2–5 章能力接入同一事件循环。
  2. 左右键分别控制左右轮三态循环。
  3. 灯光可由超声波统一指示远近。
  4. (选做)自动避障状态机。

内容要点

  1. SW21→左轮、SW20→右轮。
  2. 停止 → 前进 → 反转 循环。
  3. 测距与按键轮询交错,避免长 sleep。

代码说明

文件简要说明
motor_driver.py整车电机驱动(同第 5 章),供本章实验 import
test_sw_motor.py主循环:SW21 / SW20 边沿切换对应轮「停止→前进→反转」三态;侧灯跟随该轮是否在动。
test_sw_motor_ultrasonic_led.py在按键控轮之上叠加超声测距(脚本内联 Trig/Echo):灯光改为远绿近红语义(推荐课堂演示)。

实验

  1. 上传 motor_driver.py 后运行 test_sw_motor.py
  2. 运行 test_sw_motor_ultrasonic_led.py(推荐演示)。

GPIO 编号、LED / 按键方位以专题页 第四节「GPIO 与接线」 为准,本页不重复抄写引脚数字。

← 第 6 章 返回教程首页 第 8 章 →