首页全部课程综合进阶第 15 课
15

子程序的运用

模块化编程与完整程序

子程序变量电机控制传感器流程控制计时延时

课程概述

本节课是整个课程的综合实战,学习如何将前面所有课程中学到的子程序组合起来,编写一个完整的比赛程序。

主程序结构

1
2
3
4
// 主程序
主程序:
    调用 子程序a()
    调用 子程序b()

子程序a

1
2
3
4
5
6
7
8
9
10
11
子程序 a:
    1. 调用 装货()
    2. 电机反转后退: 速度=-50, 延时=450ms
    3. 设置 基础速度 = 50 (实际速度80)
    4. 调用 中转站一()
    5. 调用 中转站二()
    6. 前进直到检测到白线
    7. 设置 目标方向=310, 调用 右转()
    8. 调用 过白线()
    9. 设置 基础速度 = 45 (实际速度75)
    10. 调用 到行人()

子程序b

1
2
3
4
5
6
7
8
9
10
11
子程序 b:
    1. 设置 基础速度 = 70 (实际速度100)
    2. 调用 过白线()
    3. 调用 到行人()
    4. 调用 过白线()
    5. 前进直到检测到白线
    6. 设置 目标角=40, 调用 右转()
    7. 调用 过白线()
    8. 计时前进: 延时=3000ms
    9. 调用 计时走() → 到行人()
    10. 设置 基础速度 = 60 (实际速度90)

速度计算规则

实际速度 = 基础速度 + 30

基础速度实际速度使用场景
4575转弯后低速段
5080常规行驶
6090较快行驶
70100高速直道

模块化编程的优势

通过子程序将复杂任务分解为多个简单模块,每个模块可以独立调试和优化。主程序只需要按顺序调用这些子程序,代码清晰易读,修改维护也更方便。这就是"分而治之"的编程思想。

课后练习

测试一下你对本课内容的掌握程度

第 1 / 3 题

实际速度与基础速度的关系是什么?