#include <driver/i2s.h>
#include <MIDI.h>
MIDI_CREATE_INSTANCE(HardwareSerial, Serial2, MIDI2);
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

// Use I2S Processor 0
#define I2S_PORT I2S_NUM_0

#define I2S_DOUT      25
#define I2S_BCLK      27
#define I2S_LRC       26
#define IR_PIN        34

// Define input buffer length
#define bufferLen 1024
int16_t sBuffer[bufferLen];
#define FG_SIZE  1024
//hangolás:
uint32_t freqmutato = 0;
uint32_t pich=12600024;
size_t i2s_bytes_write = 0;
int tune=0;

int16_t fmharomszogfg[FG_SIZE] =  {0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168, 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216, 220, 224, 228, 232, 236, 240, 244, 248, 252, 255, 252, 248, 244, 240, 236, 232, 228, 224, 220, 216, 212, 208, 204, 200, 196, 192, 188, 184, 180, 176, 172, 168, 164, 160, 156, 152, 148, 144, 140, 136, 132, 128, 124, 120, 116, 112, 108, 104, 100, 96, 92, 88, 84, 80, 76, 72, 68, 64, 60, 56, 52, 48, 44, 40, 36, 32, 28, 24, 20, 16, 12, 8, 4, 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168, 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216, 220, 224, 228, 232, 236, 240, 244, 248, 252, 255, 252, 248, 244, 240, 236, 232, 228, 224, 220, 216, 212, 208, 204, 200, 196, 192, 188, 184, 180, 176, 172, 168, 164, 160, 156, 152, 148, 144, 140, 136, 132, 128, 124, 120, 116, 112, 108, 104, 100, 96, 92, 88, 84, 80, 76, 72, 68, 64, 60, 56, 52, 48, 44, 40, 36, 32, 28, 24, 20, 16, 12, 8, 4 };
//int16_t sinusfg[FG_SIZE]={0, 100, 201, 301, 402, 502, 603, 703, 804, 904, 1005, 1105, 1206, 1306, 1406, 1507, 1607, 1708, 1808, 1908, 2009, 2109, 2209, 2310, 2410, 2510, 2610, 2711, 2811, 2911, 3011, 3111, 3211, 3311, 3411, 3511, 3611, 3711, 3811, 3911, 4011, 4110, 4210, 4310, 4409, 4509, 4608, 4708, 4807, 4907, 5006, 5106, 5205, 5304, 5403, 5502, 5601, 5700, 5799, 5898, 5997, 6096, 6195, 6293, 6392, 6491, 6589, 6688, 6786, 6884, 6982, 7081, 7179, 7277, 7375, 7473, 7571, 7668, 7766, 7864, 7961, 8059, 8156, 8253, 8351, 8448, 8545, 8642, 8739, 8836, 8932, 9029, 9126, 9222, 9319, 9415, 9511, 9607, 9703, 9799, 9895, 9991, 10087, 10182, 10278, 10373, 10469, 10564, 10659, 10754, 10849, 10944, 11038, 11133, 11227, 11322, 11416, 11510, 11604, 11698, 11792, 11886, 11980, 12073, 12166, 12260, 12353, 12446, 12539, 12632, 12724, 12817, 12909, 13002, 13094, 13186, 13278, 13370, 13462, 13553, 13645, 13736, 13827, 13918, 14009, 14100, 14191, 14281, 14372, 14462, 14552, 14642, 14732, 14822, 14911, 15001, 15090, 15179, 15268, 15357, 15446, 15534, 15623, 15711, 15799, 15887, 15975, 16063, 16150, 16238, 16325, 16412, 16499, 16586, 16672, 16759, 16845, 16931, 17017, 17103, 17189, 17274, 17360, 17445, 17530, 17615, 17699, 17784, 17868, 17952, 18036, 18120, 18204, 18287, 18371, 18454, 18537, 18620, 18702, 18785, 18867, 18949, 19031, 19113, 19194, 19276, 19357, 19438, 19519, 19599, 19680, 19760, 19840, 19920, 20000, 20079, 20159, 20238, 20317, 20396, 20474, 20553, 20631, 20709, 20787, 20864, 20942, 21019, 21096, 21173, 21249, 21326, 21402, 21478, 21554, 21629, 21705, 21780, 21855, 21930, 22004, 22079, 22153, 22227, 22301, 22374, 22448, 22521, 22594, 22666, 22739, 22811, 22883, 22955, 23027, 23098, 23169, 23240, 23311, 23382, 23452, 23522, 23592, 23661, 23731, 23800, 23869, 23938, 24006, 24075, 24143, 24211, 24278, 24346, 24413, 24480, 24546, 24613, 24679, 24745, 24811, 24877, 24942, 25007, 25072, 25136, 25201, 25265, 25329, 25392, 25456, 25519, 25582, 25645, 25707, 25769, 25831, 25893, 25954, 26016, 26077, 26137, 26198, 26258, 26318, 26378, 26437, 26497, 26556, 26615, 26673, 26731, 26789, 26847, 26905, 26962, 27019, 27076, 27132, 27188, 27244, 27300, 27355, 27411, 27466, 27520, 27575, 27629, 27683, 27736, 27790, 27843, 27896, 27948, 28001, 28053, 28105, 28156, 28208, 28259, 28309, 28360, 28410, 28460, 28510, 28559, 28608, 28657, 28706, 28754, 28802, 28850, 28897, 28945, 28992, 29038, 29085, 29131, 29177, 29222, 29268, 29313, 29358, 29402, 29446, 29490, 29534, 29577, 29621, 29663, 29706, 29748, 29790, 29832, 29873, 29915, 29955, 29996, 30036, 30076, 30116, 30156, 30195, 30234, 30272, 30311, 30349, 30386, 30424, 30461, 30498, 30535, 30571, 30607, 30643, 30678, 30713, 30748, 30783, 30817, 30851, 30885, 30918, 30951, 30984, 31017, 31049, 31081, 31113, 31144, 31175, 31206, 31236, 31267, 31297, 31326, 31356, 31385, 31413, 31442, 31470, 31498, 31525, 31553, 31580, 31606, 31633, 31659, 31684, 31710, 31735, 31760, 31785, 31809, 31833, 31856, 31880, 31903, 31926, 31948, 31970, 31992, 32014, 32035, 32056, 32077, 32097, 32117, 32137, 32156, 32176, 32194, 32213, 32231, 32249, 32267, 32284, 32301, 32318, 32334, 32350, 32366, 32382, 32397, 32412, 32426, 32441, 32455, 32468, 32482, 32495, 32508, 32520, 32532, 32544, 32556, 32567, 32578, 32588, 32599, 32609, 32618, 32628, 32637, 32646, 32654, 32662, 32670, 32678, 32685, 32692, 32699, 32705, 32711, 32717, 32722, 32727, 32732, 32736, 32740, 32744, 32748, 32751, 32754, 32757, 32759, 32761, 32763, 32764, 32765, 32766, 32766, 32767, 32766, 32766, 32765, 32764, 32763, 32761, 32759, 32757, 32754, 32751, 32748, 32744, 32740, 32736, 32732, 32727, 32722, 32717, 32711, 32705, 32699, 32692, 32685, 32678, 32670, 32662, 32654, 32646, 32637, 32628, 32618, 32609, 32599, 32588, 32578, 32567, 32556, 32544, 32532, 32520, 32508, 32495, 32482, 32468, 32455, 32441, 32426, 32412, 32397, 32382, 32366, 32350, 32334, 32318, 32301, 32284, 32267, 32249, 32231, 32213, 32194, 32176, 32156, 32137, 32117, 32097, 32077, 32056, 32035, 32014, 31992, 31970, 31948, 31926, 31903, 31880, 31856, 31833, 31809, 31785, 31760, 31735, 31710, 31684, 31659, 31633, 31606, 31580, 31553, 31525, 31498, 31470, 31442, 31413, 31385, 31356, 31326, 31297, 31267, 31236, 31206, 31175, 31144, 31113, 31081, 31049, 31017, 30984, 30951, 30918, 30885, 30851, 30817, 30783, 30748, 30713, 30678, 30643, 30607, 30571, 30535, 30498, 30461, 30424, 30386, 30349, 30311, 30272, 30234, 30195, 30156, 30116, 30076, 30036, 29996, 29955, 29915, 29873, 29832, 29790, 29748, 29706, 29663, 29621, 29577, 29534, 29490, 29446, 29402, 29358, 29313, 29268, 29222, 29177, 29131, 29085, 29038, 28992, 28945, 28897, 28850, 28802, 28754, 28706, 28657, 28608, 28559, 28510, 28460, 28410, 28360, 28309, 28259, 28208, 28156, 28105, 28053, 28001, 27948, 27896, 27843, 27790, 27736, 27683, 27629, 27575, 27520, 27466, 27411, 27355, 27300, 27244, 27188, 27132, 27076, 27019, 26962, 26905, 26847, 26789, 26731, 26673, 26615, 26556, 26497, 26437, 26378, 26318, 26258, 26198, 26137, 26077, 26016, 25954, 25893, 25831, 25769, 25707, 25645, 25582, 25519, 25456, 25392, 25329, 25265, 25201, 25136, 25072, 25007, 24942, 24877, 24811, 24745, 24679, 24613, 24546, 24480, 24413, 24346, 24278, 24211, 24143, 24075, 24006, 23938, 23869, 23800, 23731, 23661, 23592, 23522, 23452, 23382, 23311, 23240, 23169, 23098, 23027, 22955, 22883, 22811, 22739, 22666, 22594, 22521, 22448, 22374, 22301, 22227, 22153, 22079, 22004, 21930, 21855, 21780, 21705, 21629, 21554, 21478, 21402, 21326, 21249, 21173, 21096, 21019, 20942, 20864, 20787, 20709, 20631, 20553, 20474, 20396, 20317, 20238, 20159, 20079, 20000, 19920, 19840, 19760, 19680, 19599, 19519, 19438, 19357, 19276, 19194, 19113, 19031, 18949, 18867, 18785, 18702, 18620, 18537, 18454, 18371, 18287, 18204, 18120, 18036, 17952, 17868, 17784, 17699, 17615, 17530, 17445, 17360, 17274, 17189, 17103, 17017, 16931, 16845, 16759, 16672, 16586, 16499, 16412, 16325, 16238, 16150, 16063, 15975, 15887, 15799, 15711, 15623, 15534, 15446, 15357, 15268, 15179, 15090, 15001, 14911, 14822, 14732, 14642, 14552, 14462, 14372, 14281, 14191, 14100, 14009, 13918, 13827, 13736, 13645, 13553, 13462, 13370, 13278, 13186, 13094, 13002, 12909, 12817, 12724, 12632, 12539, 12446, 12353, 12260, 12166, 12073, 11980, 11886, 11792, 11698, 11604, 11510, 11416, 11322, 11227, 11133, 11038, 10944, 10849, 10754, 10659, 10564, 10469, 10373, 10278, 10182, 10087, 9991, 9895, 9799, 9703, 9607, 9511, 9415, 9319, 9222, 9126, 9029, 8932, 8836, 8739, 8642, 8545, 8448, 8351, 8253, 8156, 8059, 7961, 7864, 7766, 7668, 7571, 7473, 7375, 7277, 7179, 7081, 6982, 6884, 6786, 6688, 6589, 6491, 6392, 6293, 6195, 6096, 5997, 5898, 5799, 5700, 5601, 5502, 5403, 5304, 5205, 5106, 5006, 4907, 4807, 4708, 4608, 4509, 4409, 4310, 4210, 4110, 4011, 3911, 3811, 3711, 3611, 3511, 3411, 3311, 3211, 3111, 3011, 2911, 2811, 2711, 2610, 2510, 2410, 2310, 2209, 2109, 2009, 1908, 1808, 1708, 1607, 1507, 1406, 1306, 1206, 1105, 1005, 904, 804, 703, 603, 502, 402, 301, 201, 100, 0, -100, -201, -301, -402, -502, -603, -703, -804, -904, -1005, -1105, -1206, -1306, -1406, -1507, -1607, -1708, -1808, -1908, -2009, -2109, -2209, -2310, -2410, -2510, -2610, -2711, -2811, -2911, -3011, -3111, -3211, -3311, -3411, -3511, -3611, -3711, -3811, -3911, -4011, -4110, -4210, -4310, -4409, -4509, -4608, -4708, -4807, -4907, -5006, -5106, -5205, -5304, -5403, -5502, -5601, -5700, -5799, -5898, -5997, -6096, -6195, -6293, -6392, -6491, -6589, -6688, -6786, -6884, -6982, -7081, -7179, -7277, -7375, -7473, -7571, -7668, -7766, -7864, -7961, -8059, -8156, -8253, -8351, -8448, -8545, -8642, -8739, -8836, -8932, -9029, -9126, -9222, -9319, -9415, -9511, -9607, -9703, -9799, -9895, -9991, -10087, -10182, -10278, -10373, -10469, -10564, -10659, -10754, -10849, -10944, -11038, -11133, -11227, -11322, -11416, -11510, -11604, -11698, -11792, -11886, -11980, -12073, -12166, -12260, -12353, -12446, -12539, -12632, -12724, -12817, -12909, -13002, -13094, -13186, -13278, -13370, -13462, -13553, -13645, -13736, -13827, -13918, -14009, -14100, -14191, -14281, -14372, -14462, -14552, -14642, -14732, -14822, -14911, -15001, -15090, -15179, -15268, -15357, -15446, -15534, -15623, -15711, -15799, -15887, -15975, -16063, -16150, -16238, -16325, -16412, -16499, -16586, -16672, -16759, -16845, -16931, -17017, -17103, -17189, -17274, -17360, -17445, -17530, -17615, -17699, -17784, -17868, -17952, -18036, -18120, -18204, -18287, -18371, -18454, -18537, -18620, -18702, -18785, -18867, -18949, -19031, -19113, -19194, -19276, -19357, -19438, -19519, -19599, -19680, -19760, -19840, -19920, -20000, -20079, -20159, -20238, -20317, -20396, -20474, -20553, -20631, -20709, -20787, -20864, -20942, -21019, -21096, -21173, -21249, -21326, -21402, -21478, -21554, -21629, -21705, -21780, -21855, -21930, -22004, -22079, -22153, -22227, -22301, -22374, -22448, -22521, -22594, -22666, -22739, -22811, -22883, -22955, -23027, -23098, -23169, -23240, -23311, -23382, -23452, -23522, -23592, -23661, -23731, -23800, -23869, -23938, -24006, -24075, -24143, -24211, -24278, -24346, -24413, -24480, -24546, -24613, -24679, -24745, -24811, -24877, -24942, -25007, -25072, -25136, -25201, -25265, -25329, -25392, -25456, -25519, -25582, -25645, -25707, -25769, -25831, -25893, -25954, -26016, -26077, -26137, -26198, -26258, -26318, -26378, -26437, -26497, -26556, -26615, -26673, -26731, -26789, -26847, -26905, -26962, -27019, -27076, -27132, -27188, -27244, -27300, -27355, -27411, -27466, -27520, -27575, -27629, -27683, -27736, -27790, -27843, -27896, -27948, -28001, -28053, -28105, -28156, -28208, -28259, -28309, -28360, -28410, -28460, -28510, -28559, -28608, -28657, -28706, -28754, -28802, -28850, -28897, -28945, -28992, -29038, -29085, -29131, -29177, -29222, -29268, -29313, -29358, -29402, -29446, -29490, -29534, -29577, -29621, -29663, -29706, -29748, -29790, -29832, -29873, -29915, -29955, -29996, -30036, -30076, -30116, -30156, -30195, -30234, -30272, -30311, -30349, -30386, -30424, -30461, -30498, -30535, -30571, -30607, -30643, -30678, -30713, -30748, -30783, -30817, -30851, -30885, -30918, -30951, -30984, -31017, -31049, -31081, -31113, -31144, -31175, -31206, -31236, -31267, -31297, -31326, -31356, -31385, -31413, -31442, -31470, -31498, -31525, -31553, -31580, -31606, -31633, -31659, -31684, -31710, -31735, -31760, -31785, -31809, -31833, -31856, -31880, -31903, -31926, -31948, -31970, -31992, -32014, -32035, -32056, -32077, -32097, -32117, -32137, -32156, -32176, -32194, -32213, -32231, -32249, -32267, -32284, -32301, -32318, -32334, -32350, -32366, -32382, -32397, -32412, -32426, -32441, -32455, -32468, -32482, -32495, -32508, -32520, -32532, -32544, -32556, -32567, -32578, -32588, -32599, -32609, -32618, -32628, -32637, -32646, -32654, -32662, -32670, -32678, -32685, -32692, -32699, -32705, -32711, -32717, -32722, -32727, -32732, -32736, -32740, -32744, -32748, -32751, -32754, -32757, -32759, -32761, -32763, -32764, -32765, -32766, -32766, -32767, -32766, -32766, -32765, -32764, -32763, -32761, -32759, -32757, -32754, -32751, -32748, -32744, -32740, -32736, -32732, -32727, -32722, -32717, -32711, -32705, -32699, -32692, -32685, -32678, -32670, -32662, -32654, -32646, -32637, -32628, -32618, -32609, -32599, -32588, -32578, -32567, -32556, -32544, -32532, -32520, -32508, -32495, -32482, -32468, -32455, -32441, -32426, -32412, -32397, -32382, -32366, -32350, -32334, -32318, -32301, -32284, -32267, -32249, -32231, -32213, -32194, -32176, -32156, -32137, -32117, -32097, -32077, -32056, -32035, -32014, -31992, -31970, -31948, -31926, -31903, -31880, -31856, -31833, -31809, -31785, -31760, -31735, -31710, -31684, -31659, -31633, -31606, -31580, -31553, -31525, -31498, -31470, -31442, -31413, -31385, -31356, -31326, -31297, -31267, -31236, -31206, -31175, -31144, -31113, -31081, -31049, -31017, -30984, -30951, -30918, -30885, -30851, -30817, -30783, -30748, -30713, -30678, -30643, -30607, -30571, -30535, -30498, -30461, -30424, -30386, -30349, -30311, -30272, -30234, -30195, -30156, -30116, -30076, -30036, -29996, -29955, -29915, -29873, -29832, -29790, -29748, -29706, -29663, -29621, -29577, -29534, -29490, -29446, -29402, -29358, -29313, -29268, -29222, -29177, -29131, -29085, -29038, -28992, -28945, -28897, -28850, -28802, -28754, -28706, -28657, -28608, -28559, -28510, -28460, -28410, -28360, -28309, -28259, -28208, -28156, -28105, -28053, -28001, -27948, -27896, -27843, -27790, -27736, -27683, -27629, -27575, -27520, -27466, -27411, -27355, -27300, -27244, -27188, -27132, -27076, -27019, -26962, -26905, -26847, -26789, -26731, -26673, -26615, -26556, -26497, -26437, -26378, -26318, -26258, -26198, -26137, -26077, -26016, -25954, -25893, -25831, -25769, -25707, -25645, -25582, -25519, -25456, -25392, -25329, -25265, -25201, -25136, -25072, -25007, -24942, -24877, -24811, -24745, -24679, -24613, -24546, -24480, -24413, -24346, -24278, -24211, -24143, -24075, -24006, -23938, -23869, -23800, -23731, -23661, -23592, -23522, -23452, -23382, -23311, -23240, -23169, -23098, -23027, -22955, -22883, -22811, -22739, -22666, -22594, -22521, -22448, -22374, -22301, -22227, -22153, -22079, -22004, -21930, -21855, -21780, -21705, -21629, -21554, -21478, -21402, -21326, -21249, -21173, -21096, -21019, -20942, -20864, -20787, -20709, -20631, -20553, -20474, -20396, -20317, -20238, -20159, -20079, -20000, -19920, -19840, -19760, -19680, -19599, -19519, -19438, -19357, -19276, -19194, -19113, -19031, -18949, -18867, -18785, -18702, -18620, -18537, -18454, -18371, -18287, -18204, -18120, -18036, -17952, -17868, -17784, -17699, -17615, -17530, -17445, -17360, -17274, -17189, -17103, -17017, -16931, -16845, -16759, -16672, -16586, -16499, -16412, -16325, -16238, -16150, -16063, -15975, -15887, -15799, -15711, -15623, -15534, -15446, -15357, -15268, -15179, -15090, -15001, -14911, -14822, -14732, -14642, -14552, -14462, -14372, -14281, -14191, -14100, -14009, -13918, -13827, -13736, -13645, -13553, -13462, -13370, -13278, -13186, -13094, -13002, -12909, -12817, -12724, -12632, -12539, -12446, -12353, -12260, -12166, -12073, -11980, -11886, -11792, -11698, -11604, -11510, -11416, -11322, -11227, -11133, -11038, -10944, -10849, -10754, -10659, -10564, -10469, -10373, -10278, -10182, -10087, -9991, -9895, -9799, -9703, -9607, -9511, -9415, -9319, -9222, -9126, -9029, -8932, -8836, -8739, -8642, -8545, -8448, -8351, -8253, -8156, -8059, -7961, -7864, -7766, -7668, -7571, -7473, -7375, -7277, -7179, -7081, -6982, -6884, -6786, -6688, -6589, -6491, -6392, -6293, -6195, -6096, -5997, -5898, -5799, -5700, -5601, -5502, -5403, -5304, -5205, -5106, -5006, -4907, -4807, -4708, -4608, -4509, -4409, -4310, -4210, -4110, -4011, -3911, -3811, -3711, -3611, -3511, -3411, -3311, -3211, -3111, -3011, -2911, -2811, -2711, -2610, -2510, -2410, -2310, -2209, -2109, -2009, -1908, -1808, -1708, -1607, -1507, -1406, -1306, -1206, -1105, -1005, -904, -804, -703, -603, -502, -402, -301, -201, -100, };
int16_t sinusfg[FG_SIZE];
void i2s_install() {
  // Set up I2S Processor configuration
  const i2s_config_t i2s_config = {
    .mode = i2s_mode_t(I2S_MODE_MASTER | I2S_MODE_TX),
    .sample_rate = 44100,
    .bits_per_sample = i2s_bits_per_sample_t(16),
    .channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT,
    .communication_format = i2s_comm_format_t(I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB),
    .intr_alloc_flags = 0,
    .dma_buf_count = 2,
    .dma_buf_len = bufferLen,
    .use_apll = false
  };
  i2s_driver_install(I2S_PORT, &i2s_config, 0, NULL);
}

void i2s_setpin() {
  // Set I2S pin configuration
  const i2s_pin_config_t pin_config = {
    .bck_io_num = I2S_BCLK ,
    .ws_io_num = I2S_LRC,
    .data_out_num =I2S_DOUT ,
    .data_in_num = IR_PIN 
  };
  i2s_set_pin(I2S_PORT, &pin_config);
}

void sinusinit() {
  Serial.print("{");
  for (int i = 0; i < FG_SIZE; i++)
  {
   // sinusfg[i] = sin(i *  4*PI / 2048) * 32767; 
    sinusfg[i] = sin(i *  PI / 512) * 32767;  
    Serial.print(sinusfg[i]);
    Serial.print(", ");    
  }
  Serial.println("};"); 
}

void setup() {
  // Set up Serial Monitor
  Serial.begin(115200);
  Serial.println(" ");
  delay(1000);
  // Set up I2S
  i2s_install();
  i2s_setpin();
  i2s_start(I2S_PORT);
  delay(500);
  sinusinit();
}

void loop() {  
//hangolom a frekit, hogy lássak valami változást
tune+=175000;
/*
if (tune>600024){tune=0;}
*/
//buffer összeállítása
  
  for (int i = 0; i < bufferLen/2-1; i+=2) {
   // sBuffer[i] = random(1, 10000);  
     sBuffer[i]=sinusfg[freqmutato>>22];
     sBuffer[i+1]=sinusfg[freqmutato>>22];       
    freqmutato+=pich+tune;
  }
  
  /*
 for (int i = bufferLen-1; i >= bufferLen/2; i-=2) {
   // sBuffer[i] = random(1, 10000);  
     sBuffer[i]=sinusfg[freqmutato>>22];
     sBuffer[i+1]=sinusfg[freqmutato>>22];       
    freqmutato+=pich+tune;
  }
  */

  
  i2s_write(I2S_PORT, &sBuffer,  bufferLen, &i2s_bytes_write, portMAX_DELAY);
}
