void VolumeBoxOnPress() { unsigned int temp; temp = Xcoord - VolumeBox.Left; temp = temp * 100; sound_level = temp / VolumeBox.Width; MP3_Set_Volume(100 - sound_level, 100 - sound_level); UpdateVolumeBar(sound_level, old_sound_level); UART1_Write_Label_Var("Sound Volume:", sound_level ); old_sound_level = sound_level; //Mute the audio if the sound is lower than 10% volume if (sound_level <= 10){ muteSound = 1; if(prev_muteSound == 0){ UART1_Write_Line("Muting Sound."); } } else{ muteSound = 0; if(prev_muteSound == 1){ UART1_Write_Line("Sound On."); } } }
//***********************************************// //MP3_Init //Prototype: void MP3_Init(void) //Description: initial vs1011e chip //Returns: None. //***********************************************// void MP3_Init() { MP3_pin_init(); // Clear BSYNC // Hardware reset MP3_reset(); while (!DREQ); MP3_SCI_Write(SCI_MODE_ADDR, 0x0800); //mode new MP3_SCI_Write(SCI_BASS_ADDR, 0x7A00); MP3_SCI_Write(SCI_CLOCKF_ADDR,0x9800); // default 12 288 000 Hz // // Maximum volume is 0x00 and total silence is 0xFE. // // // volume_right = 40; //0x3F; MP3_Set_Volume( 40, 40); Delay_ms(500); }
//************************************************// //MP3_soft_reset //Prototype: void MP3_soft_reset(unsigned char) //Parameters: volume value after reset. //Description: perform software reset for vs1011e, and set new volume. //Returns: None. //***********************************************// void MP3_soft_reset(unsigned char volume) { MP3_SCI_Write(SCI_MODE_ADDR ,0x0804) ; Delay_ms(1); /* One millisecond delay */ while (!DREQ) /* wait for startup */ ; Delay_ms(100); MP3_SCI_Write(SCI_MODE_ADDR, 0x0800); //mode new MP3_SCI_Write(SCI_BASS_ADDR, 0x7A00); MP3_SCI_Write(SCI_CLOCKF_ADDR,0x9800); // default 12 288 000 Hz // Delay_ms(200); /* One millisecond delay */ MP3_Set_Volume(volume, volume); Delay_ms(100); MP3_SDI_Write(0x00); MP3_SDI_Write(0x00); MP3_SDI_Write(0x00); MP3_SDI_Write(0x00); Delay_ms(100); }