Ynt: stm32 microcontroller ve wav file

Başlatan Karamel, 15 Ağustos 2015, 01:49:39

Karamel

#45
const char Wav[352846]={

0x52,0x49,0x46,0x46,0x46,0x62,0x05,0x00,0x57,0x41,0x56,0x45,0x66,0x6D,0x74,0x20,0x12,0x00,0x00,0x00,0x01,0x00,0x02,0x00,0x44,0xAC,0x00,0x00,0x10,0xB1,
0x02,0x00,0x04,0x00,0x10,0x00,0x00,0x00,0x64,0x61,0x74,0x61,0x20,0x62,0x05,0x00,0xE2,0xFF,0xE2,0xFF,0x6C,0xFF,0x6C,0xFF,0xD9,0xFE,0xD9,0xFE,0x47,0xFE,
0x47,0xFE,0xD0,0xFD,0xD0,0xFD,0x79,0xFD,0x79,0xFD,0x3E,0xFD,0x3D,0xFD,0x1D,0xFD,0x1F,0xFD,0x13,0xFD,0x12,0xFD,0x27,0xFD,0x26,0xFD,0x55,0xFD,0x58,0xFD,
0xB8,0xFD,0xB3,0xFD,0x28,0xFE,0x2F,0xFE,0xA3,0xFE,0x9C,0xFE,0xDF,0xFE,0xE4,0xFE,0xEB,0xFE,0xE8,0xFE,0x9A,0xFE,0x9C,0xFE,0x0E,0xFE,0x0E,0xFE,0x86,0xFD,
0x83,0xFD,0x33,0xFD,0x37,0xFD,0x00,0xFD,0xFD,0xFC,0xF0,0xFC,0xF2,0xFC,0xF7,0xFC,0xF6,0xFC,0xE6,0xFC,0xE6,0xFC,0xCD,0xFC,0xCD,0xFC,0xCB,0xFC,0xCD,0xFC,
0xD1,0xFC,0xCE,0xFC,0xEE,0xFC,0xF2,0xFC,0x14,0xFD,0x0F,0xFD,0x1C,0xFD,0x20,0xFD,0x1E,0xFD,0x1C,0xFD,0x20,0xFD,0x21,0xFD,0x31,0xFD,0x31,0xFD,0x2A,0xFD,
0x2A,0xFD,0x18,0xFD,0x16,0xFD,0x0F,0xFD,0x11,0xFD,0x14,0xFD,0x14,0xFD,0x4A,0xFD,0x49,0xFD,0x98,0xFD,0x99,0xFD,0xC3,0xFD,0xC2,0xFD,0xB6,0xFD,0xB6,0xFD,
0x8F,0xFD,0x90,0xFD,0x79,0xFD,0x79,0xFD,0x7D,0xFD,0x7C,0xFD,0xA7,0xFD,0xA8,0xFD,0xE0,0xFD,0xDE,0xFD,0x19,0xFE,0x1C,0xFE,0x5F,0xFE,0x5C,0xFE,0x84,0xFE,
0x88,0xFE,0x88,0xFE,0x84,0xFE,0x6B,0xFE,0x6C,0xFE,0x44,0xFE,0x45,0xFE,0x1F,0xFE,0x1E,0xFE,0xFE,0xFD,0x00,0xFE,0xF9,0xFD,0xF7,0xFD,0x10,0xFE,0x11,0xFE,
0x2B,0xFE,0x29,0xFE,0x4C,0xFE,0x50,0xFE,0x73,0xFE,0x6F,0xFE,0x6F,0xFE,0x73,0xFE,0x4E,0xFE,0x4A,0xFE,0x19,0xFE,0x1B,0xFE,0xC4,0xFD,0xC5,0xFD,0x8D,0xFD,
0x8B,0xFD,0x6B,0xFD,0x6D,0xFD,0x4C,0xFD,0x49,0xFD,0x33,0xFD,0x36,0xFD,0x29,0xFD,0x27,0xFD,0x44,0xFD,0x47,0xFD,0x8E,0xFD,0x8A,0xFD,0xE9,0xFD,0xEC,0xFD,
0x6B,0xFE,0x6A,0xFE,0x12,0xFF,0x11,0xFF,0xAD,0xFF,0xB0,0xFF,0x44,0x00,0x41,0x00,0xA7,0x00,0xAA,0x00,0xD2,0x00,0xD0,0x00,0xCA,0x00,0xCB,0x00,0xD8,0x00,
0xD7,0x00,0xD2,0x00,0xD3,0x00,0xC0,0x00,0xC1,0x00,0xBC,0x00,0xBA,0x00,0xB5,0x00,0xB7,0x00,0xBF,0x00,0xBC,0x00,0xE0,0x00,0xE3,0x00,0x1D,0x01,0x1B,0x01,
0x59,0x01,0x5B,0x01,0xBA,0x01,0xB8,0x01,0x0D,0x02,0x0E,0x02,0x46,0x02,0x45,0x02,0x67,0x02,0x69,0x02,0x6A,0x02,0x68,0x02,0x42,0x02,0x43,0x02,0x02,0x02,
0x00,0x02,0xB7,0x01,0xBA,0x01,0x70,0x01,0x6E,0x01,0x25,0x01,0x26,0x01,0xFD,0x00,0xFD,0x00,0xE1,0x00,0xE0,0x00,0xE1,0x00,0xE2,0x00,0xFF,0x00,0xFE,0x00,
0x3C,0x01,0x3D,0x01,0x84,0x01,0x84,0x01,0xC3,0x01,0xC3,0x01,0x04,0x02,0x05,0x02,0x52,0x02,0x4F,0x02,0xA5,0x02,0xA8,0x02,0xDC,0x02,0xDA,0x02,0xF5,0x02,
0xF7,0x02,0xEE,0x02,0xEC,0x02,0xE4,0x02,0xE6,0x02,0xEA,0x02,0xE6,0x02,0xE1,0x02,0xE6,0x02,0xE1,0x02,0xDD,0x02,0xE0,0x02,0xE3,0x02,0xDC,0x02,0xDA,0x02,
0xD4,0x02,0xD4,0x02,0xC0,0x02,0xC1,0x02,0xA9,0x02,0xA8,0x02,0x98,0x02,0x9A,0x02,0xA4,0x02,0xA2,0x02,0xCA,0x02,0xCC,0x02,0xDB,0x02,0xD7,0x02,0xCF,0x02,
0xD4,0x02,0xBE,0x02,0xBC,0x02,0xAA,0x02,0xAA,0x02,0xC1,0x02,0xC1,0x02,0xDB,0x02,0xDB,0x02,0x04,0x03,0x03,0x03,0x38,0x03,0x3A,0x03,0x69,0x03,0x67,0x03,
0x8E,0x03,0x90,0x03,0xB0,0x03,0xAE,0x03,0xC3,0x03,0xC5,0x03,0xB8,0x03,0xB5,0x03,0xA6,0x03,0xA9,0x03,0xB1,0x03,0xB0,0x03,0xDE,0x03,0xDC,0x03,0x20,0x04,
0x24,0x04,0x8B,0x04,0x86,0x04,0x04,0x05,0x09,0x05,0x74,0x05,0x71,0x05,0xB3,0x05,0xB3,0x05,0xE2,0x05,0xE4,0x05,0x1D,0x06,0x1B,0x06,0x3B,0x06,0x3C,0x06,
0x3A,0x06,0x3A,0x06,0x49,0x06,0x48,0x06,0x52,0x06,0x53,0x06,0x48,0x06,0x48,0x06,0x1E,0x06,0x1D,0x06,0xB2,0x05,0xB3,0x05,0x25,0x05,0x24,0x05,0x93,0x04,
0x93,0x04,0x46,0x04,0x47,0x04,0x64,0x04,0x63,0x04,0x91,0x04,0x92,0x04,0xA5,0x04,0xA4,0x04,0x7A,0x04,0x7A,0x04,0x25,0x04,0x25,0x04,0xCA,0x03,0xCB,0x03,
0x9B,0x03,0x9A,0x03,0xB3,0x03,0xB3,0x03,0x9E,0x03,0x9D,0x03,0x58,0x03,0x5B,0x03,0x07,0x03,0x03,0x03,0xB9,0x02,0xBE,0x02,0x7D,0x02,0x78,0x02,0x6D,0x02,
0x70,0x02,0x71,0x02,0x70,0x02,0x5F,0x02,0x5F,0x02,0x16,0x02,0x18,0x02,0xC3,0x01,0xBF,0x01,0x90,0x01,0x95,0x01,0xC6,0x01,0xC0,0x01,0x23,0x02,0x28,0x02,
0x6F,0x02,0x6C,0x02,0x53,0x02,0x55,0x02,0x05,0x02,0x04,0x02,0x78,0x01,0x78,0x01,0xE1,0x00,0xDF,0x00,0x57,0x00,0x5A,0x00,0xCE,0xFF,0xCB,0xFF,0x67,0xFF,
0x6C,0xFF,0x5A,0xFF,0x54,0xFF,0x68,0xFF,0x6C,0xFF,0x8D,0xFF,0x8B,0xFF,0x80,0xFF,0x80,0xFF,0x23,0xFF,0x24,0xFF,0x77,0xFE,0x77,0xFE,0xDB,0xFD,0xD9,0xFD,
0x68,0xFD,0x6C,0xFD,0x1E,0xFD,0x00,0xFD,0xDE,0xFC,0xE1,0xFC,0xB0,0xFC,0xAD,0xFC,0x9F,0xFC,0xA3,0xFC,0xE9,0xFC,0xE4,0xFC,0x7E,0xFD,0x85,0xFD,0x27,0xFE,
0x20,0xFE,0x7D,0xFE,0x82,0xFE,0x9A,0xFE,0x97,0xFE,0x86,0xFE,0x88,0xFE,0x6C,0xFE,0x6B,0xFE,0x6E,0xFE,0x6F,0xFE,0x6E,0xFE,0x6C,0xFE,0x33,0xFE,0x36,0xFE,
0xE3,0xFD,0xDF,0xFD,0xBE,0xFD,0xC2,0xFD,0xB4,0xFD,0xB1,0xFD,0x9E,0xFD,0xA1,0xFD,0x7D,0xFD,0x7A,0xFD,0x34,0xFD,0x37,0xFD,0xCC,0xFC,0xC8,0xFC,0x62,0xFC,
0x66,0xFC,0x20,0xFC,0x1F,0xFC,0xEB,0xFB,0xE9,0xFB,0x9E,0xFB,0xA1,0xFB,0x43,0xFB,0x40,0xFB,0xE9,0xFA,0xEC,0xFA,0xD8,0xFA,0xD7,0xFA,0x1D,0xFB,0x1D,0xFB,
0x7D,0xFB,0x7B,0xFB,0xD6,0xFB,0xD9,0xFB,0x0D,0xFC,0x0B,0xFC,0x0E,0xFC,0x0F,0xFC,0x07,0xFC,0x07,0xFC,0x3B,0xFC,0x39,0xFC,0x7B,0xFC,0x7D,0xFC,0xCD,0xFC,
0xCD,0xFC,0x2B,0xFD,0x29,0xFD,0x3F,0xFD,0x41,0xFD,0x12,0xFD,0x10,0xFD,0xAC,0xFC,0xAE,0xFC,0x6F,0xFC,0x6D,0xFC,0x31,0xFC,0x33,0xFC,0x23,0xFC,0x21,0xFC,
0x32,0xFC,0x35,0xFC,0x43,0xFC,0x3F,0xFC,0x3A,0xFC,0x3E,0xFC,0x1D,0xFC,0x00,0xFC,0xFA,0xFB,0xFB,0xFB,0xE0,0xFB,0xE1,0xFB,0xDA,0xFB,0xD7,0xFB,0xDA,0xFB,
0xDD,0xFB,0xF4,0xFB,0xF4,0xFB,0x1C,0xFC,0x19,0xFC,0x3A,0xFC,0x3E,0xFC,0x2B,0xFC,0x26,0xFC,0xE4,0xFB,0xE9,0xFB,0xA0,0xFB,0x9C,0xFB,0x82,0xFB,0x87,0xFB,
0xA9,0xFB,0xA2,0xFB,0xF8,0xFB,0xFE,0xFB,0x58,0xFC,0x55,0xFC,0xB2,0xFC,0xB4,0xFC,0xFF,0xFC,0xFE,0xFC,0x20,0xFD,0x20,0xFD,0x1E,0xFD,0x1D,0xFD,0x02,0xFD,
0x04,0xFD,0xEB,0xFC,0xEA,0xFC,0xB7,0xFC,0xB8,0xFC,0x78,0xFC,0x76,0xFC,0x4D,0xFC,0x50,0xFC,0x61,0xFC,0x5E,0xFC,0x83,0xFC,0x85,0xFC,0xB1,0xFC,0xB1,0xFC,
0xD6,0xFC,0xD5,0xFC,0x15,0xFD,0x15,0xFD,0x98,0xFD,0x9A,0xFD,0x34,0xFE,0x30,0xFE,0xC9,0xFE,0xCF,0xFE,0x34,0xFF,0x2E,0xFF,0x3B,0xFF,0x41,0xFF,0x0C,0xFF,
0x07,0xFF,0xE4,0xFE,0xE6,0xFE,0xDE,0xFE,0xDD,0xFE,0xD9,0xFE,0xDA,0xFE,0xE3,0xFE,0xE5,0xFE,0xF7,0xFE,0xF3,0xFE,0xE5,0xFE,0xE9,0xFE,0xD2,0xFE,0xCD,0xFE,
0xBF,0xFE,0xC4,0xFE,0xBB,0xFE,0xB8,0xFE,0xD8,0xFE,0xD9,0xFE,0xFC,0xFE,0xFD,0xFE,0x16,0xFF,0x13,0xFF,0x10,0xFF,0x14,0xFF,0x04,0xFF,0x01,0xFF,0xF6,0xFE,
0xF8,0xFE,0x08,0xFF,0x07,0xFF,0x24,0xFF,0x25,0xFF,0x5D,0xFF,0x5C,0xFF,0x89,0xFF,0x89,0xFF,0xC8,0xFF,0xC9,0xFF,0x1F,0x00,0x1E,0x00,0x73,0x00,0x75,0x00,
0xC2,0x00,0xC0,0x00,0xE1,0x00,0xE2,0x00,0xC8,0x00,0xC7,0x00,0x88,0x00,0x89,0x00,0x44,0x00,0x44,0x00,0xF4,0xFF,0xF2,0xFF,0xB6,0xFF,0xBA,0xFF,0x8C,0xFF,
0x87,0xFF,0x42,0xFF,0x47,0xFF,0xF2,0xFE,0xEC,0xFE,0xA0,0xFE,0xA7,0xFE,0x90,0xFE,0x8A,0xFE,0xC9,0xFE,0xCD,0xFE,0x22,0xFF,0x20,0xFF,0x6A,0xFF,0x6A,0xFF,
0xAC,0xFF,0xAD,0xFF,0x00,0x00,0x00,0x00,0x6F,0x00,0x6E,0x00,0xD7,0x00,0xD9,0x00,0x2E,0x01,0x2C,0x01,0x60,0x01,0x62,0x01,0x8D,0x01,0x8A,0x01,0xA2,0x01,
0xA6,0x01,0xDF,0x01,0xDA,0x01,0xFB,0x01,0x00,0x02,0x01,0x02,0xFE,0x01,0xF7,0x01,0xF8,0x01,0xBF,0x01,0xBE,0x01,0x7F,0x01,0x80,0x01,0x7A,0x01,0x78,0x01,
0xA4,0x01,0xA7,0x01,0xB6,0x01,0xB3,0x01,0xBA,0x01,0xBC,0x01,0xB0,0x01,0xAF,0x01,0xB7,0x01,0xB7,0x01,0xDA,0x01,0xDA,0x01,0x00,0x02,0x00,0x02,0x4C,0x02,
0x4B,0x02,0x6D,0x02,0x6F,0x02,0xAB,0x02,0xA9,0x02,0xE9,0x02,0xEB,0x02,0x09,0x03,0x07,0x03,0xFD,0x02,0xFE,0x02,0xEF,0x02,0xF0,0x02,0xD1,0x02,0xCE,0x02,
0xC3,0x02,0xC8,0x02,0xC6,0x02,0xC0,0x02,0xC2,0x02,0xC8,0x02,0xC6,0x02,0xC1,0x02,0xAF,0x02,0xB4,0x02,0x93,0x02,0x8E,0x02,0x8A,0x02,0x8E,0x02,0x97,0x02,
0x94,0x02,0x9A,0x02,0x9C,0x02,0xAF,0x02,0xAF,0x02,0xDE,0x02,0xDC,0x02,0xFC,0x02,0xFF,0x02,0x0C,0x03,0x09,0x03,0xF8,0x02,0xFA,0x02,0xC4,0x02,0xC2,0x02,
0x76,0x02,0x78,0x02,0x17,0x02,0x17,0x02,0xD0,0x01,0xCF,0x01,0x9A,0x01,0x9A,0x01,0x88,0x01,0x88,0x01,0x96,0x01,0x96,0x01,0xAB,0x01,0xAC,0x01,0xB5,0x01,
0xB4,0x01,0xC7,0x01,0xC7,0x01,0xEF,0x01,0xEF,0x01,0x2D,0x02,0x2D,0x02,0x88,0x02,0x87,0x02,0xE9,0x02,0xEB,0x02,0x42,0x03,0x40,0x03,0x82,0x03,0x85,0x03,
0xAE,0x03,0xAA,0x03,0xAF,0x03,0xB2,0x03,0x88,0x03,0x86,0x03,0x59,0x03,0x5A,0x03,0x38,0x03,0x38,0x03,0x1B,0x03,0x1B,0x03,0x04,0x03,0x03,0x03,0xE6,0x02,
0xE8,0x02,0xAF,0x02,0xAC,0x02,0x6E,0x02,0x70,0x02,0x27,0x02,0x26,0x02,0xD6,0x01,0xD8,0x01,0xA7,0x01,0xA4,0x01,0xA9,0x01,0xAD,0x01,0xC7,0x01,0xC3,0x01,
0xC5,0x01,0xC9,0x01,0xA2,0x01,0x9E,0x01,0x61,0x01,0x65,0x01,0x32,0x01,0x2D,0x01,0x09,0x01,0x10,0x01,0x07,0x01,0xFF,0x00,0x19,0x01,0x20,0x01,0x49,0x01,
0x44,0x01,0x60,0x01,0x63,0x01,0x62,0x01,0x61,0x01,0x4B,0x01,0x4A,0x01,0x18,0x01,0x00,0x01,0xE3,0x00,0xE2,0x00,0xAB,0x00,0xAB,0x00,0x99,0x00,0x9A,0x00,
0xB4,0x00,0xB2,0x00,0xCA,0x00,0xCC,0x00,0xD7,0x00,0xD7,0x00,0xD1,0x00,0xCE,0x00,0xA8,0x00,0xAE,0x00,0x6A,0x00,0x62,0x00,0x27,0x00,0x2E,0x00,0xEF,0xFF,
0xEA,0xFF,0xA5,0xFF,0xA8,0xFF,0x6B,0xFF,0x6B,0xFF,0x44,0xFF,0x41,0xFF,0x23,0xFF,0x26,0xFF,0x39,0xFF,0x37,0xFF,0x75,0xFF,0x77,0xFF,0xB4,0xFF,0xB3,0xFF,
0xCF,0xFF,0xCF,0xFF,0xD0,0xFF,0xD0,0xFF,0xB5,0xFF,0xB5,0xFF,0x78,0xFF,0x79,0xFF,0x27,0xFF,0x26,0xFF,0xCA,0xFE,0xCA,0xFE,0x5A,0xFE,0x5B,0xFE,0xD2,0xFD,
0xD1,0xFD,0x5F,0xFD,0x5F,0xFD,0xEE,0xFC,0xEF,0xFC,0x7E,0xFC,0x7B,0xFC,0x3A,0xFC,0x3F,0xFC,0xFF,0xFB,0xFB,0xFB,0xE3,0xFB,0xE5,0xFB,0x17,0xFC,0x17,0xFC,
0x60,0xFC,0x5E,0xFC,0x8A,0xFC,0x8D,0xFC,0xBA,0xFC,0xB9,0xFC,0xE9,0xFC,0xE9,0xFC,0xFE,0xFC,0xFE,0xFC,0x1E,0xFD,0x1E,0xFD,0x45,0xFD,0x44,0xFD,0x6C,0xFD,
0x6E,0xFD,0x91,0xFD,0x8F,0xFD,0xA5,0xFD,0xA7,0xFD,0xB6,0xFD,0xB5,0xFD,0xB6,0xFD,0xB5,0xFD,0xAC,0xFD,0xAE,0xFD,0x8D,0xFD,0x8A,0xFD,0x52,0xFD,0x56,0xFD,
0x26,0xFD,0x22,0xFD,0xF6,0xFC,0xFA,0xFC,0xDA,0xFC,0xD6,0xFC,0xBE,0xFC,0xC1,0xFC,0xAD,0xFC,0xAC,0xFC,0x9D,0xFC,0x9C,0xFC,0xAE,0xFC,0xB1,0xFC,0xC1,0xFC,
0xBD,0xFC,0xBF,0xFC,0xC3,0xFC,0xC5,0xFC,0xC1,0xFC,0xD6,0xFC,0xDA,0xFC,0xE0,0xFC,0xDE,0xFC,0xFC,0xFC,0xFB,0xFC,0x25,0xFD,0x28,0xFD,0x4C,0xFD,0x48,0xFD,
0x5F,0xFD,0x63,0xFD,0x76,0xFD,0x73,0xFD,0x8F,0xFD,0x90,0xFD,0xA9,0xFD,0xA9,0xFD,0xCB,0xFD,0xCB,0xFD,0x15,0xFE,0x14,0xFE,0x72,0xFE,0x73,0xFE,0xD5,0xFE,
0xD4,0xFE,0x21,0xFF,0x23,0xFF,0x4F,0xFF,0x4C,0xFF,0x58,0xFF,0x5B,0xFF,0x7F,0xFF,0x7C,0xFF,0x94,0xFF,0x97,0xFF,0x83,0xFF,0x80,0xFF,0x5F,0xFF,0x61,0xFF,
0x5C,0xFF,0x5B,0xFF,0x5E,0xFF,0x5E,0xFF,0x66,0xFF,0x68,0xFF,0x55,0xFF,0x52,0xFF,0x28,0xFF,0x2B,0xFF,0xE6,0xFE,0xE2,0xFE,0xB6,0xFE,0xB9,0xFE,0xA3,0xFE,
0xA2,0xFE,0xB2,0xFE,0xB2,0xFE,0xC8,0xFE,0xCA,0xFE,0xCD,0xFE,0xC9,0xFE,0xC0,0xFE,0xC3,0xFE,0xFE,0xFE,0xFC,0xFE,0x65,0xFF,0x66,0xFF,0xAB,0xFF,0xAC,0xFF,
0xCA,0xFF,0xC8,0xFF,0xB9,0xFF,0xBB,0xFF,0x8E,0xFF,0x8D,0xFF,0x78,0xFF,0x78,0xFF,0xA9,0xFF,0xAA,0xFF,0xE5,0xFF,0xE4,0xFF,0x17,0x00,0x18,0x00,0x48,0x00,
0x47,0x00,0x5A,0x00,0x5A,0x00,0x72,0x00,0x74,0x00,0xBF,0x00,0xBC,0x00,0x28,0x01,0x2B,0x01,0x77,0x01,0x74,0x01,0xA5,0x01,0xA6,0x01,0xC3,0x01,0xC4,0x01,
0xC8,0x01,0xC6,0x01,0xBC,0x01,0xBE,0x01,0xE3,0x01,0xE0,0x01,0x18,0x02,0x1B,0x02,0x3D,0x02,0x3A,0x02,0x56,0x02,0x59,0x02,0x84,0x02,0x82,0x02,0xC3,0x02,
0xC3,0x02,0x3F,0x03,0x40,0x03,0xCB,0x03,0xC9,0x03,0x32,0x04,0x36,0x04,0x65,0x04,0x60,0x04,0x6B,0x04,0x70,0x04,0x49,0x04,0x42,0x04,0x25,0x04,0x2E,0x04,



mesaj birleştirme:: 17 Ağustos 2015, 20:15:03

hocam hepsini message ile gonderemiyormusuz. size fazla diyor.

mesaj birleştirme:: 17 Ağustos 2015, 20:15:17

line imiz unsigned hocam.

fatih6761

Verdiğin tabloya göre ilk index değerinin 46 olması lazım sayabildiğim kadarıyla.
"data" 0x64 0x61 0x74 0x61 bundan sonraki 4 byte veri boyutu (bayt cinsinden) ondan sonraki baytlar veri oluyor.
Ayrıca:
Format Size 0x12 = 18 olarak belirtilmiş. FormatExtraSize = 0 olduğundan önemli değil.
Channels = 2 olarak belirtilmiş bu 2 kanallı bir kayıt bunu oynatırken left right sample'ları tek tek değerlendirmek gerekir!!!

t2

#47
Sorun bence tam olarak şu kısımda:
Tablodan 2 bayt okuyup bu 2 baytı yer değiştirip  integerin  low ve high baytı olarak atama kısmında sorun var. 
bu aşama tamamsa geriye bir şey kalmıyor. 32768 ekleyecez. 4 bit sağa kaydıracaz. 12bit pozitif data kalacak hepsi bu.

mesaj birleştirme:: 17 Ağustos 2015, 20:52:37

          Ses_Cal = Ses_Cal << 8;

          Ses_Cal = (Ses_Cal + Wav[value]);

işte hata tam burada! 2. satırda.
2. baytı toplama ile eklemeyelim. OR lama yapalım

Hatta integer'in low ve high baytlarına direk erişim fonksiyonu varsa, okunan baytları bu fonksiyonla eşitleyelim. toplama yapılmasın.




Karamel

hocam.

decimal 8 = 1000 binary
decimal 4 = 0100 binary

logic or  8 | 4   =1100 = decimal 12

decimal addition 8+2 = 12 = 1100 binary


burada matematiksel olarak sorun olmamasi gerekir? zaten fatih hocamin code larindada c languace char degiskeni int e ceviriyor ve bize cikti sunuyor. ikimizdede ayni sonucu aldik(bunu duyarak soyluyorum. debug ile nasil bakiliyor bilemiyorum)

biz c languge in yaptigini manual olarak yapmisiz.

burada yapmamiz gereken deney su. keske oscilloscope um olsaydi.

Ses_Cal = 0xFFFF; iken scope ekraninda 3.3v gormek gerekir?
Ses_Cal = 0x0000; iken scope ekraninda 0v gormek gerekir?
Ses_Cal = 0x8000; iken scope ekraninda 3.3/2 voltage gormek gerekir?

bu deneyleri yapamadigimdan hep ayni seyleri dondur dondur yapiyorum.  acikacsi biraz sIkIldim. biraz daha farkli deneylere kayayim diyorum. birkac gun ara verirsem. bekli aklimi daha iyi toparlar sorunu daha iyi gorebilirim.

birde burada deney yapiyoruz ama deneyi neden sadece ben yapiyorum?  :P

z

ARM derslerindeki wav projesinde 8 bit veri kullandık.

Böylece 16 yada 12 bit kayda göre 2 kat daha uzun süreli sesler elde edebildik.

16 bit verilerle çalışılacaksa fakat veriler 8 bitlik paketlerle tanımlıysa

12 bit Dac için verileri;

Ses=(Buf<<4) | (Buf[i+1]>>4) olarak çevirebiliriz.

Eğer veriler ters yazıldı ise

Ses=(Buf[i+1]<<4) | (Buf>>4) olarak çevirebiliriz.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

t2

denemek için donanım veya simulatör yok. proteuste çalışır mı STM32 demosu ?

Alıntı yapılan: Karamel - 17 Ağustos 2015, 21:07:05

birde burada deney yapiyoruz ama deneyi neden sadece ben yapiyorum?  :P

LukeSkywalker

#51
Alıntı yapılan: t2 - 17 Ağustos 2015, 20:46:46
Sorun bence tam olarak şu kısımda:
Tablodan 2 bayt okuyup bu 2 baytı yer değiştirip  integerin  low ve high baytı olarak atama kısmında sorun var. 
bu aşama tamamsa geriye bir şey kalmıyor. 32768 ekleyecez. 4 bit sağa kaydıracaz. 12bit pozitif data kalacak hepsi bu.

mesaj birleştirme:: 17 Ağustos 2015, 20:52:37

          Ses_Cal = Ses_Cal << 8;

          Ses_Cal = (Ses_Cal + Wav[value]);

işte hata tam burada! 2. satırda.
2. baytı toplama ile eklemeyelim. OR lama yapalım

Hatta integer'in low ve high baytlarına direk erişim fonksiyonu varsa, okunan baytları bu fonksiyonla eşitleyelim. toplama yapılmasın.

Neden toplama yapılmasın?

mesaj birleştirme:: 17 Ağustos 2015, 21:35:13

@Karamel İyi bir ölçü aletin yok mu?

t2

#52
toplarken galiba elde oluşuyor, taşma oluyor . Bu da büyük sayılarda oluyor. 8 e bölmenin faydası işte bu. hatayı örtbas ediyor. sonuç ORlama ile aynı oluyor

mesaj birleştirme:: 17 Ağustos 2015, 21:44:40

Alıntı yapılan: Karamel - 17 Ağustos 2015, 17:50:32
8 kat kuculttum. o cizirti gitti.


normalde baytlar maksimum olsa bile
FF00 +00FF = FFFF
şeklinde olacak ama hata çıkmayacaktı. yani toplama ile orlama aynı gibi. Acaba değişken signed integer olunca farklı mı oluyor?  diye bakmak lazım.

z

Neden işin içine işaretli sayıları sokuyorsunuzki?

İşaretsiz sayı olarak ele alın. Daha önce verdiğim şekilde kaydırma yapıp orlayacak yada toplayacaksınız.

işaretli 8 bit sayılardan işaretli 16 bit sayı elde etmek için şu işlemi yaparsanız sonuç hatalı olur.

FF<<8 + FF = FEFF çıkar.

Bu işlemi işaretsiz sayı olarak yaparsanız sonuç FFFF çıkar.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

t2

İşaretli olarak dikkate alma  sebebi, Wav dosyadaki datanın işaretli olmasından dolayı.  8 bit gibi değil

z

Olsun. Sonuçta işaretli sayının iki parçasını birleştiriyorsun. Bu işlemi işaretsiz sayı ıolarak düşünerek yapmak zorundasın. Yoksa yukarıda söylediğim hataya neden olunur.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Karamel

Alıntı yapılan: LukeSkywalker - 17 Ağustos 2015, 21:33:42
Neden toplama yapılmasın?

mesaj birleştirme:: 17 Ağustos 2015, 21:35:13

@Karamel İyi bir ölçü aletin yok mu?

hocam olcu aleti beni daha cok yaniltabilir diye olcu aleti ile deney yapmadim. sonucta orada degisken bir signal olursa. ben avo meter uzerinde karmasik rakamlar okuyacaktim?

ama yinede deneyi yaptim. bizim code larda ve dusuncemizde sanirim mantik hatasi yok.

          Ses_Cal = 0;
          Ses_Cal =  0x80; //Wav[value + 1];    MSB

          
          Ses_Cal = Ses_Cal << 8;

          //Ses_Cal = (Ses_Cal | 0x00); //Wav[value]); T2 hocaya ayip olmasin diye logic OR yaptik. LSB
          
          -Ses_Cal = Ses_Cal + 32767;
          
          -Ses_Cal = (Ses_Cal) / 16;
          
          Line1 = Ses_Cal;

          DAC1_Advanced_Ch1_Output(Line1, conf1);

          while(1);


basina "-" yerlestirdigim satirlari en basta commend sekline aldim.

ust bit e 0xFF. alt bite 0xFF verdim. cikistan avometer ile 3.2 voltage i okudum.

daha sonra bunlara 0x00 ve 0x00 degerlerini verdim. cikis 0.02voltage olarak okudum(herhalde bu 0v oluyor?

en sonunda msb ye 0x80 ve lsb ye 0x00 verdim. 1.6 voltage okudum.

bu deneylerden sonra. basina "-" koydugum code larin commend ini kaldirdim. ve deneyleri yeniden yaptim.

msb ye 0x7F lsb ye 0xFF (yani +32767) verdim. output tan 3.2voltage i gordum.

daha sonra msb ve lsb ye 0x00 degerlerini verdim(yani signed olarak 0) output voltage = 1.67v (3.3 un yaklasik yarisi)

en son msb ye 0x80 lsb ye 0x00(yani -32768). output voltage = 0.03v. herhalde buda 0 voltage olarak kabul edilebilir.


simdi ben bu deneyleri avo meter ile yaptim. bizi yuksek ihtimalle yaniltmadi. ama yaniltmis olabilirde. bu cikislari oscilloscope ile test etmeden. bu bilgiler uzerine yeni bilgiler insa etmek pek mantikli olmaz.

avo meter deneyinden bizim signed ve unsigned cevrimini becerdigimiz gozukuyor.

bundan sonra 2 soru isareti kaliyor geriye.

1. wav file belirli bir volume degerinden sonra file iceriginde degisiklik yapiyor. (ben boyle birseyi daha once bir yerde okumadim. bana hic mantikli gelmiyor)
2. wav file i string array e duzgunce cevirememis olabiliriz.


2. olan bana daha mantikli geliyor. simdi herhangi bir hocamda. max 3 sn kadar. 44100 hz 16 bit bir wav file varsa ve bunu string array e cevirebiliyorsa. o array ilede bir deney yapip. sonucu gormeliyiz. wav file mumkunse music tarzinda birsey olsun ki. eger ses bozuk cikiyorsa bunu anlayabileyim.

fatih6761

@Karamel 3 sn çok az değil mi? 3 sn denedim birşey anlaşılmıyor. 5 sn lik yaptım. Kullandığın mikrodenetleyicinin hafızası ne kadar?

https://drive.google.com/file/d/0ByIscC6i2OS-MmJCaGhxMm9PNjg/view?usp=sharing

Fazla geliyorsa başından sonundan kesersin :)

Gökhan BEKEN

Alıntı yapılan: Karamel - 17 Ağustos 2015, 21:07:05
birde burada deney yapiyoruz ama deneyi neden sadece ben yapiyorum?  :P

@Karamel ben de deneyeceğim de, kulaklığa kabloyu elimle doluyorum felan sağlam olmuyor. Bana bir kulaklık konnektörü lazım.
Ayrıca devre kurup lehimleme yerine modül şeklinde bulursam hemen deney yapıp projeyi çalıştırmak isterim.
Discovery'dekini sökmek de istemiyorum, eski bir cihaz felan bulsam sökeceğim  8)

Bu arada forumca yeni bir proje olarak, bu projeyi yapmayı teklif ediyorum.
Yazılım olarak sonuna kadar destekliyorum, başarılı olacağından şüphem yok. SD kart SDIO ve DMA yöntemi ile çalışmalarım oldu.
Dokunmatik TFT ekran olarak yeni çıkan Nextion HMI'ları kullanırız direnc.net'te var, tx rx ile çok basit bir şekilde kullanabiliyoruz. Arayüzünü bilgisayardan bir kereliğine hazırlıyoruz o kadar.
Mikrofonlu rf'li kulaklıklı güzel bir telekulak ve kaydedici, beğenmezseniz sadece müzik player olarak yaparız.

Benim aklımda çok proje var da, çizim yapmak ve montaj yapmak benim en sevmediğim şey. Birileri el atarsa yaparız.
Özel mesaj okumuyorum, lütfen göndermeyin.

Karamel

#59
Alıntı yapılan: fatih6761 - 18 Ağustos 2015, 00:27:13
@Karamel 3 sn çok az değil mi? 3 sn denedim birşey anlaşılmıyor. 5 sn lik yaptım. Kullandığın mikrodenetleyicinin hafızası ne kadar?

https://drive.google.com/file/d/0ByIscC6i2OS-MmJCaGhxMm9PNjg/view?usp=sharing

Fazla geliyorsa başından sonundan kesersin :)

kocaman bir aferim olsun bize!  8) 8) 8) 8) 8) 8) 8) 8) 8)  ::)

yapmisiz. wav file arrayimizde sorun varmis. fatih6761 hocanin verdigi array i excellent quality ile calabiliyoruz :) basarmisiz gercekten. suan cok sevincliyim ::)

mesaj birleştirme:: 18 Ağustos 2015, 01:07:51

flah memory 512 kb hocam ::)