Modifications

Sauter à la navigation Sauter à la recherche
Ligne 41 : Ligne 41 :  
Au début du sketch nous avons l' #include qui incorpore le fichier d'entête de la librairie (fichier header) files ainsi qu'un objet '''card''' qui stocke les information concernant la carte, un autre '''vol''' relatif à la partition (partition volume) et le système de fichier '''root'''.  
 
Au début du sketch nous avons l' #include qui incorpore le fichier d'entête de la librairie (fichier header) files ainsi qu'un objet '''card''' qui stocke les information concernant la carte, un autre '''vol''' relatif à la partition (partition volume) et le système de fichier '''root'''.  
   −
**** We also have an object for holding the current file information f and an object for storing information about a single wave file wave ****
+
Nous avons aussi un objet '''f''' qui maintient les information du fichier coutant et un objet '''wave''' qui gère un simple fichier wave.
 
  <nowiki>#include "WaveUtil.h"
 
  <nowiki>#include "WaveUtil.h"
 
#include "WaveHC.h"
 
#include "WaveHC.h"
      −
SdReader card;    // This object holds the information for the card
+
SdReader card;    // Objet qui maintient les information sur la carte SD
FatVolume vol;    // This holds the information for the partition on the card
+
FatVolume vol;    // Maintient les informations sur la partition de la carte
FatReader root;  // This holds the information for the filesystem on the card
+
FatReader root;  // Maintient les informations sur le système de fichier de la carte
FatReader f;      // This holds the information for the file we're playing
+
FatReader f;      // Maintient les informations sur le fichier que nous jouons
      −
WaveHC wave;      // This is the only wave (audio) object, since we will only play one at a time
+
WaveHC wave;      // C'est le seul objet (audio) wave, puisque nous jouons un seul morceau à la fois
   −
#define DEBOUNCE 100  // button debouncer
+
#define DEBOUNCE 100  // déparasitage bouton
 
</nowiki>
 
</nowiki>
 
La première chose à faire est d'initialiser la carte SD pour faire des lectures. C'est un processus qui se réalise en plusieurs étapes. Dans la fonction setup vous pouvez voir les différentes vérification qui sont faites par le processus d'initialisation.
 
La première chose à faire est d'initialiser la carte SD pour faire des lectures. C'est un processus qui se réalise en plusieurs étapes. Dans la fonction setup vous pouvez voir les différentes vérification qui sont faites par le processus d'initialisation.
Ligne 69 : Ligne 69 :     
  <nowiki>void setup() {
 
  <nowiki>void setup() {
   // set up serial port
+
   // intialisation du port série
 
   Serial.begin(9600);
 
   Serial.begin(9600);
   putstring_nl("WaveHC with 6 buttons");
+
   putstring_nl("WaveHC avec 6 boutons");
 
    
 
    
   putstring("Free RAM: ");      // This can help with debugging, running out of RAM is bad
+
   putstring("Free RAM: ");      // Aide au débogage, ce n'est pas bien de ne plus avoir de RAM
   Serial.println(freeRam());      // if this is under 150 bytes it may spell trouble!
+
   Serial.println(freeRam());      // Si c'est en dessous de 150 octets (bytes) nous aurons des soucis!
 
    
 
    
   // Set the output pins for the DAC control. This pins are defined in the library
+
   // Initialise les pins de sortie pour le contrôle DAC control.  
 +
  // Ces pins sont aussi définies dans la librairie
 
   pinMode(2, OUTPUT);
 
   pinMode(2, OUTPUT);
 
   pinMode(3, OUTPUT);
 
   pinMode(3, OUTPUT);
Ligne 82 : Ligne 83 :  
   pinMode(5, OUTPUT);
 
   pinMode(5, OUTPUT);
 
   
 
   
   // pin13 LED
+
   // LED sur pin13  
 
   pinMode(13, OUTPUT);
 
   pinMode(13, OUTPUT);
 
   
 
   
   // enable pull-up resistors on switch pins (analog inputs)
+
   // Activer la résistance Pull-Up sur les broches des boutons (entrée analogiques)
 
   digitalWrite(14, HIGH);
 
   digitalWrite(14, HIGH);
 
   digitalWrite(15, HIGH);
 
   digitalWrite(15, HIGH);
Ligne 93 : Ligne 94 :  
   digitalWrite(19, HIGH);
 
   digitalWrite(19, HIGH);
 
   
 
   
   //  if (!card.init(true)) { //play with 4 MHz spi if 8MHz isn't working for you
+
   //  if (!card.init(true)) { //SPI cadencé à 4 MHz (à utiliser si 8MHz ne fonctionne pas)
   if (!card.init()) {        //play with 8 MHz spi (default faster!)   
+
   if (!card.init()) {        //SPI cadencé ) 8 MHz (le plus rapide par défaut!)   
     putstring_nl("Card init. failed!");  // Something went wrong, lets print out why
+
     putstring_nl("Echec init. carte!");  // Qlque chose va de travers, affichons donc pourquoi
 
     sdErrorCheck();
 
     sdErrorCheck();
     while(1);                            // then 'halt' - do nothing!
+
     while(1);                            // Et 'arrêter' (ne rien faire!)
 
   }
 
   }
 
    
 
    
   // enable optimize read - some cards may timeout. Disable if you're having problems
+
   // Activer l'optimisation de lecture - Certaines cartes ne répondent pas.  
 +
  // Désactivez la ligne suivante si vous rencontrez des problèmes
 
   card.partialBlockRead(true);
 
   card.partialBlockRead(true);
 
   
 
   
// Now we will look for a FAT partition!
+
  // Recherhe de la partition FAT!
 
   uint8_t part;
 
   uint8_t part;
   for (part = 0; part < 5; part++) {    // we have up to 5 slots to look in
+
   for (part = 0; part < 5; part++) {    // Recherche dans les 5 premiers slots
 
     if (vol.init(card, part))  
 
     if (vol.init(card, part))  
       break;                            // we found one, lets bail
+
       break;                            // Trouvez? alors sortir de la boucle
 
   }
 
   }
   if (part == 5) {                      // if we ended up not finding one :(
+
   if (part == 5) {                      // Pas trouvé de partition FAT? :(
     putstring_nl("No valid FAT partition!");
+
     putstring_nl("Partition FAT invalide!");
     sdErrorCheck();     // Something went wrong, lets print out why
+
     sdErrorCheck();                     // Qlque chose va de travers, afficher pourquoi
     while(1);                            // then 'halt' - do nothing!
+
     while(1);                            // Et 'Arrêter' - (ne rien faire)!
 
   }
 
   }
 
    
 
    
   // Lets tell the user about what we found
+
   // Indiquons à l'utilisateur ce que nous avons trouvé
   putstring("Using partition ");
+
   putstring("Utiliser partition ");
 
   Serial.print(part, DEC);
 
   Serial.print(part, DEC);
   putstring(", type is FAT");
+
   putstring(", type de FAT");
   Serial.println(vol.fatType(),DEC);    // FAT16 or FAT32?
+
   Serial.println(vol.fatType(),DEC);    // FAT16 ou FAT32?
 
    
 
    
   // Try to open the root directory
+
   // Ourvir le répertoire racine
 
   if (!root.openRoot(vol)) {
 
   if (!root.openRoot(vol)) {
     putstring_nl("Can't open root dir!"); // Something went wrong,
+
     putstring_nl("Echec ouverture rep. racine!"); // Qlqchose ne fonctionne pas,
     while(1);                             // then 'halt' - do nothing!
+
     while(1);                                     // alors 'arrêter' (ne plus rien faire)!
 
   }
 
   }
 
    
 
    
   // Whew! We got past the tough parts.
+
   // Whoaw! Nous avons réaliser toutes les étapes.
   putstring_nl("Ready!");
+
   putstring_nl("Prêt!");
 
   dirLevel = 0;
 
   dirLevel = 0;
 
}
 
}
29 917

modifications

Menu de navigation