如何使用CATALEX的Mp3播放器

描述

如何使用 CATALEX 的 Mp3 播放器

只需要一个库(#include 《SoftwareSerial.h》),并且有一些简单的功能:

传感器

如何使用 HC-SR04 在规定范围

内,很容易使用。

传感器

如何同时使用它们您的版本 1:简单的 mp3如果简单的话

还没有该库,请先安装它(《SoftwareSerial.h》)。

在这个版本的代码中,如果有东西接近 50 个,那么会触发 mp3 音频。

注意:完整的.ino代码在下面的项目附件中。

传感器

如何使用版本 2 和 Disturbance mp3 相近

此版本不影响检测距离,仅扫描之间的差异。如果错误突然触发,if(gap》20){。我们需要同时在循环外声明新变量。

int firstTime=0;//我们需要在循环外声明firstTime  
long Distance,auxDistance,gap=0; 
void loop()  
{  
Distance=measureDistance(trigPin,echoPin);//测量距离并存储 
gap=abs(Distance-auxDistance);//计算现在和上次读数的差 
if(firstTime==0){//需要为了稳定性, 
auxDistance=Distance; 
间隙=0; 
//只在播放歌曲后第一次这样做以避免第一次循环故障 
firstTime++;  
延迟(1000); 

if(gap>20){ //如果距离变化为20cm 
sendCommand(CMD_PLAY_WITHFOLDER, 0X0201);//播放第二个文件夹的第一首歌曲  
firstTime=0;//避免错误!!我们不喜欢错误 
延迟(2000);  
}  
Serial.print("New Distace:");//debugggggg 
Serial.print(Distance); 
Serial.print("旧距离:"); 
串行打印(辅助距离); 
序列号.println(间隙); 
延迟(300);  
auxDistance=Distance;//将 if() 的值存储在下一个循环中 

如何使用它们的版本 3:两个距离传感器

使用两个距离传感器,实际上可以推测运动的方向,因此我做了一个程序,可以得知人的运动显示“你好”或“再见”。

首先,我们将另外两个数字化控制来控制第二个 HC-SR04:

传感器

新变量!

传感器

在设置()我们添加新的设置。

传感器

我们现在可以从函数中获取参数,更改参数。

传感器

在我们的 loop() 中:

void loop()  
{  
Distance=measureDistance(trigPin,echoPin);//测量距离1并存储 
Distance2=measureDistance(trigPin2,echoPin2);//测量距离2并存储 
gap=abs(Distance-auxDistance);//计算两者的差现在和上次读数 
gap2=abs(Distance2-auxDistance2);// 计算现在和上次读数之间的差异 
if(firstTime==0){//稳定性所必需的东西 
auxDistance=Distance; 
辅助距离2=距离2; 
间隙=0; 
间隙2=0; 
//只在播放歌曲后第一次这样做以避免第一次循环故障 
firstTime++;  
延迟(2000); 

if(gap>20 and gap2<20 ){ //如果距离变化为 20cm 
sendCommand(CMD_PLAY_WITHFOLDER, 0X0201);//播放第二个文件夹的第一首歌  
firstTime=0;//避免错误!!我们不喜欢错误 
Serial.println("RIGHT MOVEMENT DETECTED"); 
延迟(2000);  
}  
if(gap2>20 and gap<20){ //如果距离变化是20cm 
sendCommand(CMD_PLAY_WITHFOLDER, 0X0202);//播放第二个文件夹的第二首歌  
firstTime=0;//避免错误!!我们不喜欢错误 
Serial.println("检测到左移"); 
延迟(2000);  
}  
Serial.println("\\\\\\\\\\\\\\\\\\\\\\");//debugggggg 
Serial.print("New Distace:");//debugggggg 
Serial.打印(距离); 
Serial.print("旧距离:"); 
串行。 
Serial.print("GAP"); 
序列号.println(间隙); 
Serial.print("New Distace2:");//debugggggg 
Serial.print(Distance); 
Serial.print("旧距离2:"); 
串行打印(辅助距离); 
Serial.print("GAP2"); 
序列号.println(间隙); 
Serial.println("\\\\\\\\\\\\\\\\\\\\\\");//debugggggg 
延迟(300);  
auxDistance=Distance;//将if()的值存储在下一个循环中 
auxDistance2=Distance2;//将if()的值存储在下一个循环中 

Disturbance2=0;
左=0;
对=0;
delay(1000);//等待避免错误 

delay(300); 
辅助距离=距离;
auxDistance2=Distance2;//将if()的值存储在下一个循环中

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分