AUDIO LIB

Dependents:   HagridOS5

Fork of VS1053 by Vassilis Serasidis

Revision:
8:5ad25d480d5f
Parent:
7:97a8edd44fe9
Child:
9:e5337a55871a
--- a/VS1053.cpp	Sat Sep 05 12:16:06 2015 +0000
+++ b/VS1053.cpp	Thu Nov 26 14:21:36 2015 +0000
@@ -21,12 +21,12 @@
 :
     spi(mosiPin, misoPin, sckPin),
     cs(csPin),
-    bsync(bsyncPin),
+    bsync(bsyncPin), //dcs pin
     dreq(dreqPin),
     rst(rstPin)
 {
-    spi.format(8, 0);
-    spi.frequency(spiFrequency);
+    //spi.format(8, 0);
+    //spi.frequency(spiFrequency);
 
     // Initialize outputs
     cs = 1;
@@ -71,7 +71,7 @@
 /** Send a data block specified as a pointer to VS1053.
  *  @return Data length successfully sent.
  */
-size_t VS1053::sendDataBlock(uint8_t* data, size_t length) {
+size_t VS1053::sendDataBlock(char* data, size_t length) {
     size_t n, sizeSent = 0;
     
     if (!data || !length) return 0;
@@ -147,6 +147,19 @@
     return readReg(SCI_HDAT0) == 0x0000 && readReg(SCI_HDAT1) == 0x0000;
 }
 
+/**
+ * Set the VS1053 volume.
+ *
+ */
+void VS1053::setVolume(uint8_t vol)
+{
+  uint16_t value = vol;
+  value <<= 8;
+  value |= vol;
+
+  writeReg(SCI_VOL,value); // VOL
+}
+
 /** Write to an SCI (Serial Control Interface) register entry. */
 void VS1053::writeReg(uint8_t addr, uint16_t word) {
     // If addr is out-of-range, do nothing