/**************************************************************************//** * \file Sound_Track_Playback.c * \brief Sound track play driver file * \details * \author Zhang Xuan * \version V1.0.0 * \date 11-Oct-2018 * \par History: * V1.0.0 Initial release * \par Copyright: * (c) Heilongjiang TYW Electronics co., LTD ******************************************************************************/ /* Includes ------------------------------------------------------------------*/ #include "Sound_Track_Playback.h" //#include "IIS_MAX98357.h" /**************************************************************************//** * \brief Initializes the sound playback function * \retval None ******************************************************************************/ void Sound_Track_Playback_Init ( void ) { } /**************************************************************************//** * \brief PCM audio track playback * \param TrackID : PCM track ID defined in "PCM_Sound_Tracks.h" * \param Channel : Channel number(0 - 4). There are 5 PCM audio playback * channels that can play different PCM audio at the * same time * \retval None ******************************************************************************/ void Snd_PCM_Track_Play ( uint8_t TrackID, uint8_t Channel ) { #if SND_SYS_PCM_CHANNEL_ENABLE if ( ( TrackID >= PCM_TRACK_TOTAL_NUM ) || ( Channel > 4 ) ) return; //I2S_MAX98357_InternalFlash_CH0_Player(PCMTrackAttrTable[TrackID].pPCMData, PCMTrackAttrTable[TrackID].Size , 1U); //Sound_System_Play_PCM ( PCMTrackAttrTable[TrackID].pPCMData, PCMTrackAttrTable[TrackID].Size, Channel, PCMTrackAttrTable[TrackID].Gain ); #endif } /**************************************************************************//** * \brief PCM audio track playback repeatedly * \param TrackID : PCM track ID defined in "PCM_Sound_Tracks.h" * \param Channel : Channel number(0 - 4). There are 5 PCM audio playback * channels that can play different PCM audio at the * same time * \retval None ******************************************************************************/ void Snd_PCM_Track_Repeat_Play ( uint8_t TrackID, uint8_t Channel ) { #if SND_SYS_PCM_CHANNEL_ENABLE if ( ( TrackID >= PCM_TRACK_TOTAL_NUM ) || ( Channel > 4 ) ) return; //I2S_MAX98357_InternalFlash_CH0_Player(PCMTrackAttrTable[TrackID].pPCMData, PCMTrackAttrTable[TrackID].Size , 0xFFFFU); //Sound_System_Repeat_Play_PCM ( PCMTrackAttrTable[TrackID].pPCMData, PCMTrackAttrTable[TrackID].Size, Channel, PCMTrackAttrTable[TrackID].Gain ); #endif } /**************************************************************************//** * \brief Stop PCM track playback * \param Channel : Specified channel number(0 - 4) to stop * \retval None ******************************************************************************/ void Snd_PCM_Track_Stop_Play ( uint8_t Channel ) { #if SND_SYS_PCM_CHANNEL_ENABLE // Sound_System_Stop_Play_PCM ( Channel ); // I2S_MAX98357_Stop( Channel); #endif } /**************************************************************************//** * \brief Generated sound track playback * \param TrackID : Generated sound track ID defined in "Gen_Sound_Tracks.h" * \param Channel : Channel number(0 - 4). There are 5 sound generate * channels that can generate different sound at the * same time * \retval None ******************************************************************************/ void Snd_Gen_Track_Play ( uint8_t TrackID, uint8_t Channel ) { } /**************************************************************************//** * \brief Generated sound track playback repeatedly * \param TrackID : Generated sound track ID defined in "Gen_Sound_Tracks.h" * \param Channel : Channel number(0 - 4). There are 5 sound generate * channels that can generate different sound at the * same time * \retval None ******************************************************************************/ void Snd_Gen_Track_Repeat_Play ( uint8_t TrackID, uint8_t Channel ) { } /**************************************************************************//** * \brief Stop generated sound track playback * \param Channel : Specified channel number(0 - 4) to stop * \retval None ******************************************************************************/ void Snd_Gen_Track_Stop_Play ( uint8_t Channel ) { } /**************************************************************************//** * \brief Sound track playback control service * \attention Call this function every 10ms * \retval None ******************************************************************************/ void Sound_Track_Playback_Service ( void ) { }