三、数字公交

第10课 公交卡充值

任务场景:公交卡充值
任务场景:公交卡充值

一、任务目标

刷卡读出余额并显示。T3 把余额加 10 写回:成功蜂鸣 988,失败显示叉并蜂鸣 165。完整代码先按 T2 进充值模式,再用 A3/A1 改充值金额后 T3 写入。

二、我们要学什么

  • 学习要点:先读卡显示余额,再决定加多少写回去
  • 本课过关:能指出体验 T3 固定 +10;可选金额是完整代码。
  • 示例对齐:体验题对应 「3-2-1 公交卡充值」;完整代码对应 「3-2-2 不同数额公交卡充值」。

三、本节要点

体验没有充值模式灯。T2 切换模式在 3-2-2。

1读场景明确真实任务
2对要点读余额,T3 加 10 写回
3载入运行本课积木/代码

四、解题思路

  • 输入:RFID 内容;T3。完整代码另用 T2/A3/A1。
  • 输出:点阵余额;蜂鸣成败。
  • 生活对照:充值机先显示余额,再确认写入。
  • 验证现象:刷卡出数字;再按 T3 余额应多 10。

本课主要用到:RFID、点阵、蜂鸣器、板载键。

  1. 1read_card 内容转 int。
  2. 2shows(余额)。
  3. 3T3 写 余额+10。
  4. 4写成败用音高区分。

流程示意(可对照左侧文字)

任务:公交卡充值搭出主循环,让程序一直运行…判断传感或变量是否达到阈值…把计算结果映射到可观察输出…加入延时(约0.1秒/单位…

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
读 RFID 内容
板载传感读取卡内数据区。read_card 内容当余额。
写 RFID
板载传感向卡写入数据并返回结果。体验 T3 写 余额+10。
蜂鸣器发声
板载执行按音调与时长播放一声。成功 988,失败 165。
显示图案
板载显示在点阵上显示内置或自定义图案(心形、对勾等)。写失败 shows(NO)。
延时
控制暂停指定时间,常用于动画节奏或等待。载入后可在工具箱对照本课用法。
取反
逻辑把真变假、假变真。完整代码 T2 翻转充值模式。

六、知识点讲解

本课核心是读出再加写。体验加的是固定 10;改金额要进完整代码的充值模式。

None

没读到卡就不赋值。

+10

体验写回 余额+10。

充值模式

完整代码 1 号灯指示。

  • 过关:能说出体验为什么没有 A3。

先弄清本课输入与输出,再进编程练习对照现象。

七、编程练习

点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

3-2-1 公交卡充值.mix。载入后运行。

八、课堂练习

先完成两道判断题,再完成选择题;全部选定后点「检查」。

  1. 判断:体验必须先按 T2 进入充值模式才能写卡。

  2. 判断:写卡成功时蜂鸣音高是 988。

  3. 体验 T3 给余额加多少?

  4. 完整代码 A3 会把充值金额?

九、本节小结

记住:体验固定加 10;不同数额是完整代码。