• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
audio trigger Teensy
#1
Czesc, mam taki projekt do zrobienia gdzie jest 10 guzikow i kazdy odpowiada za konkretny sampel (1 guzik - 1 dzwiek). Probuje to zrobic uzywajac Teensy 3.2 z Teensy audio board. Nie moge jednak dojsc do tego jak napisac dobry kod zeby to dzialalo, jestem poczatkujacy w tych sprawach i opieram sie jeszcze na tutorialach. Potrzebuje miec ten projekt dzialajacy do poniedzialku. Kod ktory jak na razie mam to: 
Kod:
#include <Bounce.h>
#include <Audio.h>
#include <Wire.h>
#include <SPI.h>
#include <SD.h>
#include <SerialFlash.h>

// GUItool: begin automatically generated code
AudioPlaySdWav           playSdWav3;     //xy=101.00000762939453,217.0000057220459
AudioPlaySdWav           playSdWav2;     //xy=147.00000762939453,138.00000381469727
AudioPlaySdWav           playSdWav1;     //xy=162.00000762939453,91.00000381469727
AudioMixer4              mixer1;         //xy=335,143
AudioOutputI2S           i2s1;           //xy=555.0000381469727,138.00001525878906
AudioConnection          patchCord1(playSdWav3, 0, mixer1, 2);
AudioConnection          patchCord2(playSdWav2, 0, mixer1, 1);
AudioConnection          patchCord3(playSdWav1, 0, mixer1, 0);
AudioConnection          patchCord4(mixer1, 0, i2s1, 0);
AudioConnection          patchCord5(mixer1, 0, i2s1, 1);
AudioControlSGTL5000     sgtl5000_1;     //xy=394.00000762939453,228.00003051757812
// GUItool: end automatically generated code

// Bounce objects to read pushbuttons
Bounce button0 = Bounce(0, 15);
Bounce button1 = Bounce(1, 15);  // 15 ms debounce time
Bounce button2 = Bounce(2, 15);


#define SDCARD_CS_PIN    10
#define SDCARD_MOSI_PIN  7
#define SDCARD_SCK_PIN   14

void setup() {
 Serial.begin(9600);
 pinMode(0, INPUT_PULLUP);
 pinMode(1, INPUT_PULLUP);
 pinMode(2, INPUT_PULLUP);

 AudioMemory(8);
 sgtl5000_1.enable();
 sgtl5000_1.volume(0.5);

 SPI.setMOSI(SDCARD_MOSI_PIN);
 SPI.setSCK(SDCARD_SCK_PIN);
 if (!(SD.begin(SDCARD_CS_PIN))) {
   while (1) {
     Serial.println("Unable to access the SD card");
     delay(500);
   }
 }
}

void playFile(const char *filename)
{
 Serial.print("Playing file: ");
 Serial.println(filename);
 playSdWav1.play(filename);
 delay(100);
 while (playSdWav1.isPlaying()) {
 }
}


void loop() {
 
   button0.update();
button1.update();
 button2.update();

  if (button0.fallingEdge()) {
 playFile("JOANNA1"); // filenames are always uppercase 8.3 format
  }
 delay(5000);
  if (button1.fallingEdge()) {
 playFile("JOANNA2");
  }
 delay(5000);
  if (button2.fallingEdge()) {
 playFile("JOANNA3");
  }
 delay(5000);
  /*if (button3.fallingEdge()) {
 playFile("JOANNA4");
 delay(1500);
  }*/
}

z gory dzieki za pomoc
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości