瀏覽代碼

first commit

Etienne Landon 8 年之前
當前提交
3635747d96
共有 1 個文件被更改,包括 127 次插入0 次删除
  1. 127 0
      I_Mihalache_AudioPlayer.ino

+ 127 - 0
I_Mihalache_AudioPlayer.ino

@@ -0,0 +1,127 @@
+#include <Audio.h>
+#include <Wire.h>
+#include <SPI.h>
+#include <SD.h>
+#include <SerialFlash.h>
+
+#include <DmxSimple.h>
+
+/* SdWav1 : sample voix           |
+ * SdWav2 : sample attente        |-> mix1 -> Lout & RMS1
+ * 
+ * SdWav3 : sample ambiance       -> mix2 -> Rout  & RMS2
+ */
+// GUItool: begin automatically generated code
+AudioPlaySdWav           playSdWav3;     //xy=152,429
+AudioPlaySdWav           playSdWav1;     //xy=153,217
+AudioPlaySdWav           playSdWav2;     //xy=155,307
+AudioMixer4              mixer1;         //xy=572,215
+AudioMixer4              mixer2;         //xy=579,344
+AudioAnalyzeRMS          rms1;           //xy=875,315
+AudioOutputI2S           i2s1;           //xy=876,225
+AudioAnalyzeRMS          rms2;           //xy=876,365
+AudioConnection          patchCord1(playSdWav3, 0, mixer2, 0);
+AudioConnection          patchCord2(playSdWav1, 0, mixer1, 0);
+AudioConnection          patchCord3(playSdWav2, 0, mixer1, 1);
+AudioConnection          patchCord4(mixer1, 0, i2s1, 0);
+AudioConnection          patchCord5(mixer1, rms1);
+AudioConnection          patchCord6(mixer2, 0, i2s1, 1);
+AudioConnection          patchCord7(mixer2, rms2);
+AudioControlSGTL5000     sgtl5000_1;     //xy=573,537
+// GUItool: end automatically generated code
+
+
+// Use these with the Teensy Audio Shield
+#define SDCARD_CS_PIN    10
+#define SDCARD_MOSI_PIN  7
+#define SDCARD_SCK_PIN   14
+
+// Use these with the Teensy 3.5 & 3.6 SD card
+//#define SDCARD_CS_PIN    BUILTIN_SDCARD
+//#define SDCARD_MOSI_PIN  11  // not actually used
+//#define SDCARD_SCK_PIN   13  // not actually used
+
+void setup() {
+  Serial.begin(9600);
+  DmxSimple.maxChannel(4);
+  DmxSimple.write(4, 250);
+  pinMode(16, INPUT);
+  pinMode(20,INPUT);
+  // Audio connections require memory to work.  For more
+  // detailed information, see the MemoryAndCpuUsage example
+  AudioMemory(16);
+
+  // Comment these out if not using the audio adaptor board.
+  // This may wait forever if the SDA & SCL pins lack
+  // pullup resistors
+  sgtl5000_1.enable();
+  sgtl5000_1.lineOutLevel(13);  // set output to 3.16 Vpp
+  sgtl5000_1.volume(1); //set volume to maximum
+
+  SPI.setMOSI(SDCARD_MOSI_PIN);
+  SPI.setSCK(SDCARD_SCK_PIN);
+  if (!(SD.begin(SDCARD_CS_PIN))) {
+    // stop here, but print a message repetitively
+    while (1) {
+      Serial.println("Unable to access the SD card");
+      delay(500);
+    }
+  }
+}
+//
+//void playFile(const char *filename)
+//{
+//  Serial.print("Playing file: ");
+//  Serial.println(filename);
+//
+//  // Start playing the file.  This sketch continues to
+//  // run while the file plays.
+//  playWav1.play(filename);
+//
+//  // A brief delay for the library read WAV info
+//  delay(5);
+//
+//  // Simply wait for the file to finish playing.
+//  while (playWav1.isPlaying()) {
+//    // uncomment these lines if you audio shield
+//    // has the optional volume pot soldered
+//    //float vol = analogRead(15);
+//    //vol = vol / 1024;
+//    // sgtl5000_1.volume(vol);
+//  }
+//}
+
+void printLDR(){
+  Serial.print(analogRead(A3));
+  Serial.print("   ");
+  Serial.print(digitalRead(16));
+  Serial.print("   ");
+  Serial.print(analogRead(A7));
+  Serial.print("   ");
+  Serial.print(digitalRead(20));
+  Serial.println();
+}
+
+void loop() {
+  int brightness;
+  /* Simple loop to ramp up brightness */
+  for (brightness = 0; brightness <= 255; brightness++) {
+    
+    /* Update DMX channel 1 to new brightness */
+    DmxSimple.write(1, brightness);
+    printLDR();
+    /* Small delay to slow down the ramping */
+    delay(10);
+  }
+  
+  delay(100);
+//  playFile("SDTEST1.WAV");  // filenames are always uppercase 8.3 format
+//  delay(500);
+//  playFile("SDTEST2.WAV");
+//  delay(500);
+//  playFile("SDTEST3.WAV");
+//  delay(500);
+//  playFile("SDTEST4.WAV");
+//  delay(1500);
+}
+