二、刷卡开门

第7课 刷卡开门

任务场景:刷卡开门
任务场景:刷卡开门

一、任务目标

刷到卡就蜂鸣,并尝试在点阵上播放开门动画。完整代码只有卡号在白名单集合里才开门。MINI 仿真可能看不到 SANT 点阵图,对照以读卡+蜂鸣为主。

二、我们要学什么

  • 学习要点:开门可以先「有卡就开」,再升级成「名单里才开」
  • 本课过关:能指出体验无白名单;完整代码集合含 991377439。
  • 示例对齐:体验题对应 「2-3-1 刷卡开门」;完整代码对应 「2-3-2 安全刷卡开门」。

三、本节要点

Zero 课用点阵 shows 显示 OPEN/CLOSE。灵刻板仿真没有这块屏时,仍应听到蜂鸣、看到读卡逻辑。本课已改为点阵门状态文字。

1读场景明确真实任务
2对要点有卡开门,再加白名单
3载入运行本课积木/代码

四、解题思路

  • 输入:RFID 卡号。完整代码对照集合 s1。
  • 输出:蜂鸣;官方还有关门/开门中/开门图。
  • 生活对照:小区门:先感应,后查名单。
  • 验证现象:有卡应蜂鸣;完整代码名单外的卡不应走开门分支。

本课主要用到:RFID、蜂鸣器;官方示例另含 SANT 点阵(仿真可能无图)。

  1. 1读到 id 则 pitch。
  2. 2体验随即开门动画。
  3. 3完整代码 if id2 in s1 才开门。
  4. 4无卡时回到关门图。

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

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

五、图形块功能讲解

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

图形块分类作用本课用法
创建集合
集合创建不重复元素集合。完整代码:s1 = {991377439}。
是否包含
逻辑判断某值是否在列表/字符串中。完整代码:id2 in s1 才开门。

六、知识点讲解

本课核心是刷卡开门。体验先演示「有卡就开」,完整代码加上白名单。

白名单

集合里的卡号才合法。示例写了 991377439。

点阵

Zero 无点阵,用点阵显示 OPEN/CLOSE,蜂鸣提示刷卡。

不要改 mix

不要为了仿真删掉 onboard_matrix.shows / DOOR_*。

  • 过关:能说出体验与完整代码在「谁可以开」上的差别。

先对蜂鸣,再看完整代码的 in s1。

七、编程练习

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

2-3-1 刷卡开门.mix。载入后运行。

八、课堂练习

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

  1. 判断:体验题已经用白名单,名单外的卡也会蜂鸣但不开门。

  2. 判断:完整代码只有卡号属于集合 s1 才走开门分支。

  3. 灵刻板仿真看不到开门图时,应优先对照?

  4. 完整代码白名单示例里的卡号是?

九、本节小结

记住:体验有卡就开;名单校验是 2-3-2。