Boite à mots doux : Différence entre versions

De Les Fabriques du Ponant
Aller à : navigation, rechercher
(Étape 3 : Réalisation de la boite à la découpeuse laser)
 
Ligne 45 : Ligne 45 :
  
 
===Étape 2 : Réalisation du code Arduino ===
 
===Étape 2 : Réalisation du code Arduino ===
 +
 +
<pre>
  
 
///              MP3 PLAYER PROJECT
 
///              MP3 PLAYER PROJECT
Ligne 181 : Ligne 183 :
 
}
 
}
  
 +
 +
</pre>
 
===Étape 3 : Réalisation de la boite à la découpeuse laser ===
 
===Étape 3 : Réalisation de la boite à la découpeuse laser ===
  

Version actuelle datée du 31 janvier 2019 à 12:04

Le groupe a décidé de réaliser une boite à mots doux.

Ce projet a été conçu par des élèves de l'ENIB.

L'ENIB est une école d'ingénieurs situé au Technopôle de Brest


Description du projet

La boite à mots doux est une boite possédant un haut-parleur et un bouton poussoir pour pouvoir changer de piste. Dans la boite il y a un Arduino et un lecteur MP3.


5

Objectifs pédagogiques

Ce projet a pour ambition de nous faire découvrir de nouvelles façons d'utiliser le numérique et plus particulièrement de pouvoir utiliser un Arduino.

Équipe en charge du projet

  • William LE CORRE
  • Tony CUILLANDRE
  • Damien CRENN
  • Quentin LE FRANC

Matériel nécessaire

Réalisation

Étape 1 : Réalisation du câblage Arduino

On utilise un Breadboard pour pouvoir réaliser notre câblage. On place le lecteur MP3 dessus ainsi qu'une résistance.

Cablage avec 3 boutons

Étape 2 : Réalisation du code Arduino


///              MP3 PLAYER PROJECT
/// http://educ8s.tv/arduino-mp3-player/
//////////////////////////////////////////


#include "SoftwareSerial.h"
SoftwareSerial mySerial(10, 11);
# define Start_Byte 0x7E
# define Version_Byte 0xFF
# define Command_Length 0x06
# define End_Byte 0xEF
# define Acknowledge 0x00 //Returns info with command 0x41 [0x01: info, 0x00: no info]

# define ACTIVATED LOW

int buttonNext = 2;
int buttonPause = 3;
int buttonPrevious = 4;
boolean isPlaying = false;

const int led = 8;

void setup () {

pinMode(buttonPause, INPUT);
digitalWrite(buttonPause,HIGH);
pinMode(buttonNext, INPUT);
digitalWrite(buttonNext,HIGH);
pinMode(buttonPrevious, INPUT);
digitalWrite(buttonPrevious,HIGH);

mySerial.begin (9600);
delay(1000);
playFirst();
isPlaying = true;


}



void loop () { 

 if (digitalRead(buttonPause) == ACTIVATED)
  {
    if(isPlaying)
    {
      pause();
      isPlaying = false;
    }else
    {
      isPlaying = true;
      play();
    }
    //contenu du programme

  }






 if (digitalRead(buttonNext) == ACTIVATED)
  {
    if(isPlaying)
    {
      playNext();
    }
  }

   if (digitalRead(buttonPrevious) == ACTIVATED)
  {
    if(isPlaying)
    {
      playPrevious();
    }
  }
}

void playFirst()
{
  execute_CMD(0x3F, 0, 0);
  delay(500);
  setVolume(20);
  delay(500);
  execute_CMD(0x11,0,1); 
  delay(500);
}

void pause()
{
  execute_CMD(0x0E,0,0);
  delay(500);
}

void play()
{
  execute_CMD(0x0D,0,1); 
  delay(500);
}

void playNext()
{
  execute_CMD(0x01,0,1);
  delay(500);
}

void playPrevious()
{
  execute_CMD(0x02,0,1);
  delay(500);
}

void setVolume(int volume)
{
  execute_CMD(0x06, 0, volume); // Set the volume (0x00~0x30)
  delay(2000);
}

void execute_CMD(byte CMD, byte Par1, byte Par2)
// Excecute the command and parameters
{
// Calculate the checksum (2 bytes)
word checksum = -(Version_Byte + Command_Length + CMD + Acknowledge + Par1 + Par2);
// Build the command line
byte Command_line[10] = { Start_Byte, Version_Byte, Command_Length, CMD, Acknowledge,
Par1, Par2, highByte(checksum), lowByte(checksum), End_Byte};
//Send the command line to the module
for (byte k=0; k<10; k++)
{
mySerial.write( Command_line[k]);
}
}


Étape 3 : Réalisation de la boite à la découpeuse laser

Nous avons réalisé la boite à l'aide d'une découpeuse laser.

Photo de la réalisation de la boite

Étape 4 : Assemblage

Nous avons fixé l'Arduino, et la plaque labdec au fond de la boite, nous avons soudé les câbles au bouton poussoir ainsi qu'au haut-parleur et visser ce dernier.

1

2

3

4