inline void ConfigurePowerAmpRegisters(void) { uint8_t write_data[20]; /* Wait for Power Amp to be ready */ while( GetPowerAmpStatus() == POWER_AMP_NOT_READY ) { continue; } /* Write Data */ // TAS5717_SYSTEM_CONTROL_2_REGISTER_ADDRESS write_data[0] = 0x00; // No trimming PowerAmpWriteInitializationRegisterData(TAS5717_OSCILLATOR_TRIM_REGISTER_ADDRESS , write_data, 1); Delay(DELAY_50MS); Delay(DELAY_50MS); write_data[0] = 0x80; PowerAmpWriteInitializationRegisterData(TAS5717_SYSTEM_CONTROL_1_REGISTER_ADDRESS , write_data, 1); Delay(DELAY_50MS); write_data[0] = 0x80; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_1_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); write_data[0] = 0x7C; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_2_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); write_data[0] = 0x80; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_3_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); write_data[0] = 0x7C; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_4_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); write_data[0] = 0x07; PowerAmpWriteInitializationRegisterData(TAS5717_BKND_ERR_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); // write_data[0] = 0x00; // write_data[1] = 0x30; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_3_VOLUME_REGISTER_ADDRESS, write_data, 2); // address, data, bytes // Delay(DELAY_10MS); write_data[0] = 0xF1; PowerAmpWriteInitializationRegisterData(TAS5717_VOLUME_CONFIGURATION_REGISTER_ADDRESS , write_data, 1); // Delay(DELAY_50MS); write_data[0] = 0x6C; PowerAmpWriteInitializationRegisterData(TAS5717_CLOCK_CONTROL_REGISTER_ADDRESS , write_data, 1); //Delay(DELAY_50MS); // write_data[0] = 0x0F; // write_data[1] = 0x70; // write_data[2] = 0x80; // write_data[3] = 0x10; // PowerAmpWriteInitializationRegisterData(TAS5717_EQ_CONTROL_REGISTER_ADDRESS, write_data, 4); // 0x50, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x01; // write_data[1] = 0x02; // write_data[2] = 0x13; // write_data[3] = 0x45; // PowerAmpWriteInitializationRegisterData(TAS5717_PWM_MUX_REGISTER_ADDRESS, write_data, 4); // 0x25, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x80; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_INLINE_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x70, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_INLINE_DRC_EN_MIXER_CHANNEL_1_REGISTER_ADDRESS, write_data, 4); // 0x71, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x80; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_INLINE_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x74, data, bytes // //Delay(DELAY_10MS); // // write_data[0] = 0x00;; // write_data[1] = 0x00; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_INLINE_DRC_EN_MIXER_CHANNEL_2_REGISTER_ADDRESS, write_data, 4); // 0x75, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x02; // write_data[2] = 0x06; // write_data[3] = 0x23; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_CONTROL_REGISTER_ADDRESS, write_data, 4); // 0x46, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x80; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_1_REGISTER_ADDRESS , write_data, 1); // 0x11, data, bytes //Delay(DELAY_50MS); write_data[0] = 0x7C; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_2_REGISTER_ADDRESS , write_data, 1); // 0x12, data, bytes //Delay(DELAY_50MS); write_data[0] = 0x80; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_3_REGISTER_ADDRESS , write_data, 1); // 0x13, data, bytes //Delay(DELAY_50MS); write_data[0] = 0x7C; PowerAmpWriteInitializationRegisterData(TAS5717_IC_DELAY_CHANNEL_4_REGISTER_ADDRESS , write_data, 1); // 0x14, data, bytes //Delay(DELAY_50MS); write_data[0] = 0x00; write_data[1] = 0x89; write_data[2] = 0x77; write_data[3] = 0x72; PowerAmpWriteInitializationRegisterData(TAS5717_INPUT_MUX_REGISTER_ADDRESS, write_data, 4); // 0x20, data, bytes // //Delay(DELAY_10MS); // write_data[0] = 0x40; PowerAmpWriteInitializationRegisterData(TAS5717_SYSTEM_CONTROL_2_REGISTER_ADDRESS, write_data, 1); // 0x05, data, bytes // //Delay(DELAY_50MS); // write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x00; write_data[3] = 0x00; PowerAmpWriteInitializationRegisterData(TAS5717_OUTPUT_POST_SCALE_REGISTER_ADDRESS, write_data, 4); // 0x56, data, bytes //// //Delay(DELAY_10MS); //// write_data[0] = 0x00; write_data[1] = 0x02; write_data[2] = 0x00; write_data[3] = 0x00; PowerAmpWriteInitializationRegisterData(TAS5717_OUTPUT_PRE_SCALE_REGISTER_ADDRESS, write_data, 4); // 0x57, data, bytes //Delay(DELAY_10MS); // // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes //// //Delay(DELAY_10MS); //// // write_data[0] = 0x0D; // write_data[1] = 0x48; // write_data[2] = 0x00; // write_data[3] = 0x00; //// write_data[4] = 0x09; //// write_data[5] = 0x09; //// write_data[6] = 0xFF; //// write_data[7] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_1_ATTACK_THRESHOLD_REGISTER_ADDRESS, write_data, 4); // 0x40, data, bytes...this should be 4 bytes but we write 8???? //// //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes //// //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes //// //Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x01; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x7F; // write_data[6] = 0x00; // write_data[7] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_1_SOFTENING_FILTER_ALPHA_OMEGA_REGISTER_ADDRESS, write_data, 8); // 0x3B, data, bytes // //Delay(DELAY_10MS); ////// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x01; // write_data[3] = 0x00; // write_data[4] = 0xFF; // write_data[5] = 0xFF; // write_data[6] = 0xFF; // write_data[7] = 0xF0; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_1_ATTACK_RELEASE_RATE_REGISTER_ADDRESS, write_data, 8); // 0x3C, data, bytes // //Delay(DELAY_10MS); ////// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x0D; // write_data[1] = 0x48; // write_data[2] = 0x00; // write_data[3] = 0x00; //// write_data[4] = 0x09; //// write_data[5] = 0x09; //// write_data[6] = 0xFF; //// write_data[7] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_2_ATTACK_THRESHOLD_REGISTER_ADDRESS, write_data, 4); // 0x43, data, bytes...this should be 4 bytes but we write 8???? // //Delay(DELAY_10MS); // // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // // Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x01; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x7F; // write_data[6] = 0xFF; // write_data[7] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_2_SOFTENING_FILTER_ALPHA_OMEGA_REGISTER_ADDRESS, write_data, 8); // 0x3E, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); // // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0xFF; // write_data[5] = 0xF8; // write_data[6] = 0x00; // write_data[7] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_DRC_2_ATTACK_RELEASE_RATE_REGISTER_ADDRESS, write_data, 8); // 0x3F, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x03; // write_data[1] = 0xFF; // PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // // Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_OUTPUT_MIXER_REGISTER_ADDRESS, write_data, 8); // 0x51, data, bytes // Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_OUTPUT_MIXER_REGISTER_ADDRESS, write_data, 8); // 0x52, data, bytes // Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_10_REGISTER_ADDRESS, write_data, 20); // 0x58, data, bytes //// //Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_11_REGISTER_ADDRESS, write_data, 20); // 0x59, data, bytes // Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_4_BIQUAD_0_REGISTER_ADDRESS, write_data, 20); // 0x5A, data, bytes // //Delay(DELAY_10MS); //// // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_4_BIQUAD_1_REGISTER_ADDRESS, write_data, 20); // 0x5B, data, bytes // Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_0_REGISTER_ADDRESS, write_data, 20); // 0x26, data, bytes // //Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // write_data[4] = 0x00; // write_data[5] = 0x00; // write_data[6] = 0x00; // write_data[7] = 0x00; // write_data[8] = 0x00; // write_data[9] = 0x00; // write_data[10] = 0x00; // write_data[11] = 0x00; // write_data[12] = 0x00; // write_data[13] = 0x00; // write_data[14] = 0x00; // write_data[15] = 0x00; // write_data[16] = 0x00; // write_data[17] = 0x00; // write_data[18] = 0x00; // write_data[19] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_0_REGISTER_ADDRESS, write_data, 20); // 0x30, data, bytes // //Delay(DELAY_10MS); // // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_LEFT_CHANNEL_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x73, data, bytes //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_RIGHT_CHANNEL_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x72, data, bytes //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_LEFT_CHANNEL_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x76, data, bytes //Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x08; // write_data[2] = 0x00; // write_data[3] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_RIGHT_CHANNEL_MIXER_REGISTER_ADDRESS, write_data, 4); // 0x77, data, bytes // Delay(DELAY_10MS); // write_data[0] = 0x00; // write_data[1] = 0x00; // write_data[2] = 0x00; // write_data[3] = 0x06; // PowerAmpWriteInitializationRegisterData(TAS5717_PWM_SWITCHING_RATE_CONTROL_REGISTER_ADDRESS, write_data, 4); // 0x4F, data, bytes // Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7E; write_data[2] = 0xF9; write_data[3] = 0x26; write_data[4] = 0x0F; write_data[5] = 0x02; write_data[6] = 0x0D; write_data[7] = 0xB4; write_data[8] = 0x00; write_data[9] = 0x7E; write_data[10] = 0xF9; write_data[11] = 0x26; write_data[12] = 0x00; write_data[13] = 0xFD; write_data[14] = 0xF0; write_data[15] = 0x30; write_data[16] = 0x0F; write_data[17] = 0x82; write_data[18] = 0x0B; write_data[19] = 0x99; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_1_REGISTER_ADDRESS, write_data, 20); // 0x27, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x16; write_data[3] = 0x27; write_data[4] = 0x0F; write_data[5] = 0x00; write_data[6] = 0xAE; write_data[7] = 0xB6; write_data[8] = 0x00; write_data[9] = 0x7F; write_data[10] = 0x3E; write_data[11] = 0xB8; write_data[12] = 0x00; write_data[13] = 0xFF; write_data[14] = 0x51; write_data[15] = 0x4A; write_data[16] = 0x0F; write_data[17] = 0x80; write_data[18] = 0xAB; write_data[19] = 0x21; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_2_REGISTER_ADDRESS, write_data, 20); // 0x28, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7D; write_data[2] = 0xAF; write_data[3] = 0x4A; write_data[4] = 0x0F; write_data[5] = 0x06; write_data[6] = 0x42; write_data[7] = 0xD8; write_data[8] = 0x00; write_data[9] = 0x7C; write_data[10] = 0x21; write_data[11] = 0xA4; write_data[12] = 0x00; write_data[13] = 0xF9; write_data[14] = 0xBD; write_data[15] = 0x28; write_data[16] = 0x0F; write_data[17] = 0x86; write_data[18] = 0x2F; write_data[19] = 0x11; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_3_REGISTER_ADDRESS, write_data, 20); // 0x29, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7E; write_data[2] = 0x6B; write_data[3] = 0xC7; write_data[4] = 0x0F; write_data[5] = 0x0A; write_data[6] = 0xAC; write_data[7] = 0x92; write_data[8] = 0x00; write_data[9] = 0x79; write_data[10] = 0x05; write_data[11] = 0x94; write_data[12] = 0x00; write_data[13] = 0xF5; write_data[14] = 0x53; write_data[15] = 0x6E; write_data[16] = 0x0F; write_data[17] = 0x88; write_data[18] = 0x8E; write_data[19] = 0xA4; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_4_REGISTER_ADDRESS, write_data, 20); // 0x2A, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x78; write_data[2] = 0xB7; write_data[3] = 0x2A; write_data[4] = 0x0F; write_data[5] = 0x3D; write_data[6] = 0xCE; write_data[7] = 0xA6; write_data[8] = 0x00; write_data[9] = 0x57; write_data[10] = 0xCE; write_data[11] = 0x7E; write_data[12] = 0x00; write_data[13] = 0xC2; write_data[14] = 0x31; write_data[15] = 0x5A; write_data[16] = 0x0F; write_data[17] = 0xA7; write_data[18] = 0x7A; write_data[19] = 0x57; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_5_REGISTER_ADDRESS, write_data, 20); // 0x2B, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7C; write_data[2] = 0xE1; write_data[3] = 0x86; write_data[4] = 0x0F; write_data[5] = 0x6B; write_data[6] = 0x34; write_data[7] = 0xA6; write_data[8] = 0x00; write_data[9] = 0x64; write_data[10] = 0xC9; write_data[11] = 0xE9; write_data[12] = 0x00; write_data[13] = 0x94; write_data[14] = 0xCB; write_data[15] = 0x5A; write_data[16] = 0x0F; write_data[17] = 0x9E; write_data[18] = 0x54; write_data[19] = 0x91; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_6_REGISTER_ADDRESS, write_data, 20); // 0x2C, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7F; write_data[2] = 0x89; write_data[3] = 0x00; write_data[4] = 0x0F; write_data[5] = 0x12; write_data[6] = 0xAA; write_data[7] = 0xDE; write_data[8] = 0x00; write_data[9] = 0x6F; write_data[10] = 0xD8; write_data[11] = 0x67; write_data[12] = 0x00; write_data[13] = 0xED; write_data[14] = 0x55; write_data[15] = 0x22; write_data[16] = 0x0F; write_data[17] = 0x90; write_data[18] = 0x9E; write_data[19] = 0x99; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_7_REGISTER_ADDRESS, write_data, 20); // 0x2D, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x00; write_data[3] = 0x00; write_data[4] = 0x00; write_data[5] = 0x00; write_data[6] = 0x00; write_data[7] = 0x00; write_data[8] = 0x00; write_data[9] = 0x00; write_data[10] = 0x00; write_data[11] = 0x00; write_data[12] = 0x00; write_data[13] = 0x00; write_data[14] = 0x00; write_data[15] = 0x00; write_data[16] = 0x00; write_data[17] = 0x00; write_data[18] = 0x00; write_data[19] = 0x00; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_8_REGISTER_ADDRESS, write_data, 20); // 0x2E, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x00; write_data[3] = 0x00; write_data[4] = 0x00; write_data[5] = 0x00; write_data[6] = 0x00; write_data[7] = 0x00; write_data[8] = 0x00; write_data[9] = 0x00; write_data[10] = 0x00; write_data[11] = 0x00; write_data[12] = 0x00; write_data[13] = 0x00; write_data[14] = 0x00; write_data[15] = 0x00; write_data[16] = 0x00; write_data[17] = 0x00; write_data[18] = 0x00; write_data[19] = 0x00; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_1_BIQUAD_9_REGISTER_ADDRESS, write_data, 20); // 0x2F, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7E; write_data[2] = 0xF9; write_data[3] = 0x26; write_data[4] = 0x0F; write_data[5] = 0x02; write_data[6] = 0x0D; write_data[7] = 0xB4; write_data[8] = 0x00; write_data[9] = 0x7E; write_data[10] = 0xF9; write_data[11] = 0x26; write_data[12] = 0x00; write_data[13] = 0xFD; write_data[14] = 0xF0; write_data[15] = 0x30; write_data[16] = 0x0F; write_data[17] = 0x82; write_data[18] = 0x0B; write_data[19] = 0x99; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_1_REGISTER_ADDRESS, write_data, 20); // 0x31, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x16; write_data[3] = 0x27; write_data[4] = 0x0F; write_data[5] = 0x00; write_data[6] = 0xAE; write_data[7] = 0xB6; write_data[8] = 0x00; write_data[9] = 0x7F; write_data[10] = 0x3E; write_data[11] = 0xB8; write_data[12] = 0x00; write_data[13] = 0xFF; write_data[14] = 0x51; write_data[15] = 0x4A; write_data[16] = 0x0F; write_data[17] = 0x80; write_data[18] = 0xAB; write_data[19] = 0x21; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_2_REGISTER_ADDRESS, write_data, 20); // 0x32, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7D; write_data[2] = 0xAF; write_data[3] = 0x4A; write_data[4] = 0x0F; write_data[5] = 0x06; write_data[6] = 0x42; write_data[7] = 0xD8; write_data[8] = 0x00; write_data[9] = 0x7C; write_data[10] = 0x21; write_data[11] = 0xA4; write_data[12] = 0x00; write_data[13] = 0xF9; write_data[14] = 0xBD; write_data[15] = 0x28; write_data[16] = 0x0F; write_data[17] = 0x86; write_data[18] = 0x2F; write_data[19] = 0x11; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_3_REGISTER_ADDRESS, write_data, 20); // 0x33, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7E; write_data[2] = 0x6B; write_data[3] = 0xC7; write_data[4] = 0x0F; write_data[5] = 0x0A; write_data[6] = 0xAC; write_data[7] = 0x92; write_data[8] = 0x00; write_data[9] = 0x79; write_data[10] = 0x05; write_data[11] = 0x94; write_data[12] = 0x00; write_data[13] = 0xF5; write_data[14] = 0x53; write_data[15] = 0x6E; write_data[16] = 0x0F; write_data[17] = 0x88; write_data[18] = 0x8E; write_data[19] = 0xA4; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_4_REGISTER_ADDRESS, write_data, 20); // 0x34, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x78; write_data[2] = 0xB7; write_data[3] = 0x2A; write_data[4] = 0x0F; write_data[5] = 0x3D; write_data[6] = 0xCE; write_data[7] = 0xA6; write_data[8] = 0x00; write_data[9] = 0x57; write_data[10] = 0xCE; write_data[11] = 0x7E; write_data[12] = 0x00; write_data[13] = 0xC2; write_data[14] = 0x31; write_data[15] = 0x5A; write_data[16] = 0x0F; write_data[17] = 0xA7; write_data[18] = 0x7A; write_data[19] = 0x57; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_5_REGISTER_ADDRESS, write_data, 20); // 0x35, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7C; write_data[2] = 0xE1; write_data[3] = 0x86; write_data[4] = 0x0F; write_data[5] = 0x6B; write_data[6] = 0x34; write_data[7] = 0xA6; write_data[8] = 0x00; write_data[9] = 0x64; write_data[10] = 0xC9; write_data[11] = 0xE9; write_data[12] = 0x00; write_data[13] = 0x94; write_data[14] = 0xCB; write_data[15] = 0x5A; write_data[16] = 0x0F; write_data[17] = 0x9E; write_data[18] = 0x54; write_data[19] = 0x91; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_6_REGISTER_ADDRESS, write_data, 20); // 0x36, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x7F; write_data[2] = 0x89; write_data[3] = 0x00; write_data[4] = 0x0F; write_data[5] = 0x12; write_data[6] = 0xAA; write_data[7] = 0xDE; write_data[8] = 0x00; write_data[9] = 0x6F; write_data[10] = 0xD8; write_data[11] = 0x67; write_data[12] = 0x00; write_data[13] = 0xED; write_data[14] = 0x55; write_data[15] = 0x22; write_data[16] = 0x0F; write_data[17] = 0x90; write_data[18] = 0x9E; write_data[19] = 0x99; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_7_REGISTER_ADDRESS, write_data, 20); // 0x37, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0x80; write_data[2] = 0x00; write_data[3] = 0x00; write_data[4] = 0x00; write_data[5] = 0x00; write_data[6] = 0x00; write_data[7] = 0x00; write_data[8] = 0x00; write_data[9] = 0x00; write_data[10] = 0x00; write_data[11] = 0x00; write_data[12] = 0x00; write_data[13] = 0x00; write_data[14] = 0x00; write_data[15] = 0x00; write_data[16] = 0x00; write_data[17] = 0x00; write_data[18] = 0x00; write_data[19] = 0x00; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_8_REGISTER_ADDRESS, write_data, 20); // 0x38, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x00; write_data[1] = 0xC8; write_data[2] = 0x2E; write_data[3] = 0x2F; write_data[4] = 0x0F; write_data[5] = 0x0C; write_data[6] = 0x80; write_data[7] = 0x4C; write_data[8] = 0x00; write_data[9] = 0x59; write_data[10] = 0x61; write_data[11] = 0x42; write_data[12] = 0x00; write_data[13] = 0x7E; write_data[14] = 0xD9; write_data[15] = 0x90; write_data[16] = 0x0F; write_data[17] = 0xD3; write_data[18] = 0x16; write_data[19] = 0xB2; PowerAmpWriteInitializationRegisterData(TAS5717_CHANNEL_2_BIQUAD_9_REGISTER_ADDRESS, write_data, 20); // 0x39, data, bytes //Delay(DELAY_10MS); write_data[0] = 0x03; PowerAmpWriteInitializationRegisterData(TAS5717_SERIAL_DATA_INTERFACE_REGISTER_ADDRESS, write_data, 1); // 0x04, data, bytes Delay(DELAY_50MS); write_data[0] = 0x08; PowerAmpWriteInitializationRegisterData(TAS5717_SYSTEM_CONTROL_2_REGISTER_ADDRESS, write_data, 1); // 0x05, data, bytes Delay(DELAY_50MS); // write_data[0] = 0x01; write_data[1] = 0x50; PowerAmpWriteInitializationRegisterData(TAS5717_MASTER_VOLUME_REGISTER_ADDRESS, write_data, 2); // 0x07, data, bytes // //Delay(DELAY_10MS); //write_data[0] = 0x00; // PowerAmpWriteInitializationRegisterData(TAS5717_ERROR_STATUS_REGISTER_ADDRESS, write_data, 1); // 0x02, data, bytes //Delay(DELAY_50MS); // }