【Mind+】Arduino Uno入门 项目十三 公园人数计数系统

2019-07-265.7万
AI 快速预览详细 收起
本教程介绍了如何使用Arduino Uno、红外接近开关和液晶显示模块制作一个公园人数计数系统。项目包括硬件连接和程序编写两部分。硬件连接部分详细说明了如何将红外接近开关模块与2号和3号管脚相连,液晶显示模块则采用第11课的连接方式。程序编写部分重点讲解了中断功能的应用,通过中断实现进出公园人数的自动增减。此项目适合STEM教育场景,帮助初学者掌握硬件连接和程序编写的基本技能。


【Mind+】Arduino Uno入门 项目十三 公园人数计数系统
-DFRobot官方出品


*学习目标:

1.元件
        红外接近开关模块 液晶显示模块
2Mind+ 程序模块
       设置number的值
     IIC液晶显示屏显示
     中断引脚
     变量
3程序设计
       顺序结构
       循环结构

     本节中,我们不再学习新的元件,而是将前面所学的液晶显示屏和红外接近开关联系起来,做一个综合项目,公园人数计数系统。我们经常见到媒体报道某个景区在某个假日接待多少人次,创下历史新高,不知道你有没有好奇过景区到底是如何完成这项统计的呢?
     我相信,在学习了本节之后,你一定可以找到一种解决办法。本节是一个难度较大的项目,但在你已经掌握了前面的知识和元件的用法后,相信你一定可以通过思考和实践完成这个任务。

本节任务
任务 1——制作一个公园人数计数系统
1. 实现功能
     每进来一位游客,显示屏上进入公园人次加一
2. 硬件连接
     取出一个液晶显示模块,依然采用第 11 课的连接方式
     取出一个红外接近开关模块,用连接线将其与 2 号管脚对应的三个管脚相连
     (注意插线时颜色的对应黑色为信号线
【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图1
3. 程序编写
【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图2
     
     这段程序中,我们使用了一个新的模块
——中断。
     中断过程是指,在程序顺序执行的过程中,当主控板收到规定的某些数字输入信号时,会立即暂停当前执行的程序,转而去执行中断部分的程序,当中断部分执行完毕,再回到刚才暂停的地方继续执行原来的程序。注意:主控板上只有 2 号和 3 号管脚支持中断功能。
      举一个简单的例子:比如你在家看电视,突然门铃响了(家人回来了),【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图5那么你不得不停下看电视先去开门,之后你又可以继续看电视啦!在整个过程中接电话就是一个中断过程,门铃响就是中断的标志,即触发中断的条件。

任务 2——制作一个公园人数计数系统

1. 实现功能
     每进来一位游客(2 号管脚触发中断),显示屏上公园人数加一。每出去一位游客(3 号管脚触发中断),显示屏上公园人数减一。
2. 硬件连接
     取出一个液晶显示模块,依然采用第 11 课的连接方式
     取出两个红外接近开关模块,用连接线分别将其与 2 号管脚3 号管脚对应的三个管脚相连(注意插线时颜色的对应
3. 程序编写
【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图3
课后作业

1. 任务要求
     制作一个公园人数计数系统:在任务 2 的基础上,增加防干扰功能(提示:如果 2 号或 3 号管脚在一定短暂时间内数次触发中断,则不增加或减少计次)
2. 思路解析
【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图6

3. 程序编写
【Mind+】Arduino Uno入门 项目十三 公园人数计数系统图4

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(11)
斑斓
斑斓
红外接近开关能换成其它模块吗?
tbj123
tbj123

真的很棒作为一名师范生该向您学习!
一只小渔儿
一只小渔儿
还想再发同一条
一只小渔儿
一只小渔儿
真的很棒作为一名师范生该向您学习!
边塞
边塞
你好,请问一下,我的测试从0到-1 是正常的,再增加就会出现在十位数上增加,个位上会有数字,会显示11,21,31,这样该怎么解决啊
五小创客社团
五小创客社团回复EVE
我来补充一下,就是说当增加的数值变成两位数时,会显示10,当执行减数数值时,两位数后面的一位数不会变化也不会消失,就是10会变成90,逐次会变成80、70,而不是两位数的10变成一位数的9,显示就是这样,程序得改,就是不知如何改,让10变成9,而不是90.
EVE
EVE
作者
回复边塞
没明白您的问题
Zoey
Zoey
请问地址怎么看 为什么是0x20
五小创客社团
五小创客社团回复EVE
我的1602是0x27
EVE
EVE
作者
回复Zoey
一般初始化指令上会写IIC地址,也可以看硬件本身是否标注了可用的IIC地址
三春牛-创客
三春牛-创客
6666666666
三春牛-创客
三春牛-创客
点赞点赞!
三春牛-创客
三春牛-创客
教程不错!
三春牛-创客
三春牛-创客
请问这个红外接近开关模块哪里有卖?
三春牛-创客
三春牛-创客回复EVE
非常感谢!
三春牛-创客
三春牛-创客回复EVE
哇!谢谢
共3条回复,已加载2条,点击查看更多共3条回复,已加载全部
鑫想事成
鑫想事成
这个中断是怎么弄得
DFHJnojArKd
DFHJnojArKd回复鑫想事成
我也不知道
EVE
EVE
作者
回复鑫想事成
mind+软件中,点击“扩展-功能模块-引脚中断”,就可以用咯
- 没有更多了 -