2024-11-6 10:37:01 [显示全部楼层]
4816浏览
查看: 4816|回复: 0

[M10项目] 信息科技实验(苏教版)——模拟公交卡充值扣费过程

[复制链接]
本帖最后由 hnyzcj 于 2024-11-6 11:00 编辑

模拟公交充值程序

信息科技教材(苏教版)物联网识别技术中提供了“模拟公交卡充值和扣费的过程”实验,介绍了电子标签如何写入和读取信息,通过模拟公交卡充值和扣费的场景验证射频识别系统的工作原理。具体内容如下图。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图2
我们根据学校自身情况设计信息科技实验:模拟公交卡的充值与刷卡使用。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图1
信息科技实验(苏教版)——模拟公交卡充值扣费过程图3
信息科技实验(苏教版)——模拟公交卡充值扣费过程图4

实验目的:
通过公交卡充值和扣费场景模拟,学习如何对电子标签进行读写信息。
需求分析:
1)功能需求:能模拟公交卡进行充值扣费操作;可通过屏幕选择充值费用;模拟乘车刷卡自动扣费。
2)界面需求:显示公交卡余额及卡号;提供四种不同金额的充值方式。
技术分析:
(1)NFC电子标签的读取和写入信息。
(2)人机交互友好界面设计与制作。
知识储备:
日常乘坐公交出行,我们会使用到NFC公交卡。首先你得去对卡充值,然后再可以使用公交卡支付车费,但无论是充值还是刷卡扣费,其根本都是对电子标签进行数据写入。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图7
读写器给电子标签写数据的原理是通过无线信号实现的。读写器通过天线发送信号,电子标签接收到信号后,将其一部分能量用于内部工作电源,另一部分信号经过电子标签内部电路调制后反射回读写器。读写器接收到反射信号后,通过解调和解码过程,将数据写入电子标签的存储器中。‌


实验器材:
(1)行空板M10
(2)NFC近场通讯模块
(3)Mind+编程软件




信息科技实验(苏教版)——模拟公交卡充值扣费过程图5

实验一操作步骤
Step01:认识NFC模块,认识NFC近场通讯模块中的电子标签和读写器。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图6
Step02:连接电路,将NFC模块与行空板I2C接口连接如下图所示。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图9
Step03:编写程序读取电子标签值。
(1)环境部署:打开mind+软件,点击左下角“拓展”,在“官方库”选项卡中添加“行空板”,在“pingpong”库中添加“NFC”模块,如下图所示。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图11
(2)认识写入指令:NFC模块提供了写入指令如下所示,我们可以选取相应数据块的及其对应的字节写入适当数据。下图中选择“数据块5的第一个字节”写入数据为200
信息科技实验(苏教版)——模拟公交卡充值扣费过程图8
(3)编写程序实现数据写入:写入程序如下图所示,尝试运行程序,对电子标签进行数据写入。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图12
终端显示如下
信息科技实验(苏教版)——模拟公交卡充值扣费过程图10
此时表面已对公交卡写入数据成功。
Step04:修改上述程序为大于255,记录反馈结果。
修改程序为下图所示(因为后续充值程序可能会超出255的范围)
信息科技实验(苏教版)——模拟公交卡充值扣费过程图15
运行程序,终端反馈如下。因此可以得出目前状态下,充值最大不能超过255
信息科技实验(苏教版)——模拟公交卡充值扣费过程图13
信息科技实验(苏教版)——模拟公交卡充值扣费过程图14
实验二操作步骤
Step01:设计公交卡充值程序界面收银界面,在提供的稿纸上手绘界面。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图16
Step02:列出所需组件,根据上步设计列举所需组件并记录。组件类型:文字、图片、按钮、矩形,对应指令如下图(①文字对应“南京公交充值机”、对应“南京”图片、③对应四个数额的按钮、④对应绿色矩形)
信息科技实验(苏教版)——模拟公交卡充值扣费过程图17
Step03:上述组件在程序中的定义及初始化。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图21
Step04:根据实验一程序,相应改写完成对公交卡的充值,具体程序及屏幕界面如下图所示。
(注:充值后总金额不要超过255,读取数据块指令返回数据类型为字符型需进行数据类型转化。)
信息科技实验(苏教版)——模拟公交卡充值扣费过程图23



信息科技实验(苏教版)——模拟公交卡充值扣费过程图18
实验三操作步骤
Step01:设计程序界面及使用到的组件,并根据实际刷卡扣费情况设计刷卡扣费流程如下,没有放入卡时如图1;刷过公交卡后屏幕显示卡余额和开及本次扣费金额。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图19
Step02:思考所需变量,根据功能设计变量money代表公交卡中的金额,具体程序如下图所示。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图20
Step03:公交卡扣费时只需要检测到公交卡(为简单起见,没有考虑优惠情况)直接扣费2元,这相对充值程序逻辑上来说简单很多不需要做几种数额的扣费选择,设计程序算法逻辑如下。
信息科技实验(苏教版)——模拟公交卡充值扣费过程图22
Step04:编程实现完整程序,并测试运行。

信息科技实验(苏教版)——模拟公交卡充值扣费过程图24

1105写入程序.zip

165.53 KB, 下载次数: 0

售价: 5 创造力  [记录]  [购买]

1102扣费程序.zip

722.28 KB, 下载次数: 0

售价: 10 创造力  [记录]  [购买]

1105充值程序(多币种).zip

1.57 MB, 下载次数: 0

售价: 10 创造力  [记录]  [购买]

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail