“Running Dinosaur”小游戏
“Running Dinosaur”小游戏由LCD、LED、舵机、超声波距离传感器等部件构成,实现了由手部动作作为输入信号,由LCD显示游戏过程,由LED与舵机展示游戏状态。
实验器材
-
LCD1602液晶显示器
-
超声波传感器
-
舵机SG90
-
LED
器材简介
LCD1602液晶显示器
-
1602液晶可以显示2行,每行显示16个字符,每个字符的大小是5*7点阵,可以通过8位或者4位总线通讯,应用广泛。
-
1602LCD显示器基本操作:
超声波传感器
-
超声波测距模块是用来测量距离的一种产品,通过发送和就接收超声波,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。
-
HC-SR04 模块特点:HC-SR04 超声波测距模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到 3mm;包括超声波发射器、接收器与控制电路。
-
基本工作原理:
-
采用 IO口 TRIG 触发测距,给最少 10us 的高电平信呈。
-
模块自动发送8个40Khz 的方波,自动检测是否有高电平返回;
-
有信号返回,通过 IO口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。
舵机SG90
-
舵机是一种位置(角度)伺服的驱动器,由外壳、电路板、驱动马达、减速器与位置检测元件所构成,适用于那些需要角度不断变化并可以保持的控制系统。目前,在高档遥控玩具,如飞机、潜艇模型,遥控机器人中已经得到了普遍应用。主要用于需要输出某一控制角度的场合,舵机可以根据控制信号来输出指定的角度,常见的有0-90°、0-180°、0-360°。
-
工作原理:舵机是由接收机发出讯号给舵机,经由电路板上的 IC驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回讯号,判断是否已经到达定位。一般的伺服马达是将细铜线缠绕在三极转子上,当电流流经线圈时便会产生磁场,与转子外围的磁铁产生排斥作用,进而产生转动的作用力。
实验接线
实验流程
1.流程伪代码
//游戏状态play(0:正在游戏,1:游戏未开始,2:赢,3:输)
score=0;//分数
play=1;//游戏未开始
lcd.print("press Start");
三色LED灯闪烁
if 感应到手掌
游戏开始;
play=0;
绿灯=HIGH;
end
if 撞到柱子
游戏失败;
play=3;
lcd.print("You lose!");
for i=1:10
红灯闪烁;
end
play=1;//回到游戏未开始状态
elseif score>=15
黄灯=HIGH;
if score>=20
游戏成功;
play=2;
lcd.print("You win!");
舵机.write(90);//舵机举起红旗
for i=1:10
三色灯轮流亮起;
end
舵机.write(0);//舵机落下红旗
play=1;//回到游戏未开始状态
elseif 撞到柱子
游戏失败;
……
……
end
end
2. 流程图