SPMA084 December   2021 TM4C1230C3PM , TM4C1230C3PM , TM4C1230D5PM , TM4C1230D5PM , TM4C1230E6PM , TM4C1230E6PM , TM4C1230H6PM , TM4C1230H6PM , TM4C1231C3PM , TM4C1231C3PM , TM4C1231D5PM , TM4C1231D5PM , TM4C1231D5PZ , TM4C1231D5PZ , TM4C1231E6PM , TM4C1231E6PM , TM4C1231E6PZ , TM4C1231E6PZ , TM4C1231H6PGE , TM4C1231H6PGE , TM4C1231H6PM , TM4C1231H6PM , TM4C1231H6PZ , TM4C1231H6PZ , TM4C1232C3PM , TM4C1232C3PM , TM4C1232D5PM , TM4C1232D5PM , TM4C1232E6PM , TM4C1232E6PM , TM4C1232H6PM , TM4C1232H6PM , TM4C1233C3PM , TM4C1233C3PM , TM4C1233D5PM , TM4C1233D5PM , TM4C1233D5PZ , TM4C1233D5PZ , TM4C1233E6PM , TM4C1233E6PM , TM4C1233E6PZ , TM4C1233E6PZ , TM4C1233H6PGE , TM4C1233H6PGE , TM4C1233H6PM , TM4C1233H6PM , TM4C1233H6PZ , TM4C1233H6PZ , TM4C1236D5PM , TM4C1236D5PM , TM4C1236E6PM , TM4C1236E6PM , TM4C1236H6PM , TM4C1236H6PM , TM4C1237D5PM , TM4C1237D5PM , TM4C1237D5PZ , TM4C1237D5PZ , TM4C1237E6PM , TM4C1237E6PM , TM4C1237E6PZ , TM4C1237E6PZ , TM4C1237H6PGE , TM4C1237H6PGE , TM4C1237H6PM , TM4C1237H6PM , TM4C1237H6PZ , TM4C1237H6PZ , TM4C123AE6PM , TM4C123AE6PM , TM4C123AH6PM , TM4C123AH6PM , TM4C123BE6PM , TM4C123BE6PM , TM4C123BE6PZ , TM4C123BE6PZ , TM4C123BH6PGE , TM4C123BH6PGE , TM4C123BH6PM , TM4C123BH6PM , TM4C123BH6PZ , TM4C123BH6PZ , TM4C123FE6PM , TM4C123FE6PM , TM4C123FH6PM , TM4C123FH6PM , TM4C123GE6PM , TM4C123GE6PM , TM4C123GE6PZ , TM4C123GE6PZ , TM4C123GH6PGE , TM4C123GH6PGE , TM4C123GH6PM , TM4C123GH6PM , TM4C123GH6PZ , TM4C123GH6PZ , TM4C1290NCPDT , TM4C1290NCPDT , TM4C1290NCZAD , TM4C1290NCZAD , TM4C1292NCPDT , TM4C1292NCPDT , TM4C1292NCZAD , TM4C1292NCZAD , TM4C1294KCPDT , TM4C1294KCPDT , TM4C1294NCPDT , TM4C1294NCPDT , TM4C1294NCZAD , TM4C1294NCZAD , TM4C1297NCZAD , TM4C1297NCZAD , TM4C1299KCZAD , TM4C1299KCZAD , TM4C1299NCZAD , TM4C1299NCZAD , TM4C129CNCPDT , TM4C129CNCPDT , TM4C129CNCZAD , TM4C129CNCZAD , TM4C129DNCPDT , TM4C129DNCPDT , TM4C129DNCZAD , TM4C129DNCZAD , TM4C129EKCPDT , TM4C129EKCPDT , TM4C129ENCPDT , TM4C129ENCPDT , TM4C129ENCZAD , TM4C129ENCZAD , TM4C129LNCZAD , TM4C129LNCZAD , TM4C129XKCZAD , TM4C129XKCZAD , TM4C129XNCZAD , TM4C129XNCZAD

 

  1.   Trademarks
  2. 1Introduction
  3. 2Pulse Width Modulation (PWM) emulation of a DAC
  4. 3Audio Sampling Rate and Resolution Analysis
    1. 3.1 Using the PWM DAC Method
    2. 3.2 Using Off-Chip DAC
  5. 4Audio File Data Format
    1. 4.1 WAV File Size Calculation
    2. 4.2 Storing WAV Audio on Internal Flash
  6. 5Hardware Setup
    1. 5.1 BOOSTXL-AUDIO BoosterPack Overview
    2. 5.2 Hardware Setup for EK-TM4C1294XL
    3. 5.3 Hardware Setup for EK-TM4C123GXL
    4. 5.4 Hardware Setup for DK-TM4C129x Development Board
  7. 6Application Examples
    1. 6.1 Examples: audio_playback_internal_wavefile_by_PWM_EKTM4C129 and audio_playback_internal_wavefile_by_SPIDAC_EKTM4C129
    2. 6.2 Examples: audio_playback_internal_wavefile_by_PWM_EKTM4C123 and audio_playback_internal_wavefile_by_SPIDAC_EKTM4C123
    3. 6.3 Examples: audio_playback_internal_wavefile_by_PWM and audio_playback_internal_wavefile_by_SPIDAC
    4. 6.4 Examples: audio_playback_with_sdcard_by_PWM and audio_playback_with_sdcard_by_SPIDAC
  8. 7Download and Import the Examples
  9. 8References

Application Examples

A collection of eight examples are presented in Table 6-1 to demonstrate running the audio playback applications on different develop boards using either PWM DAC or SPI DAC methods.

Table 6-1 Application Examples
Example Board Description
audio_playback_with_ sdcard_by_PWM DK-TM4C129x This example application demonstrates playing .wav files from an SD card that is formatted with a FAT file system. The application can browse the file system on the SD card and displays all files that are found on the LCD display. Files can be selected to show their format and then played if the application determines that they are a valid .wav file. Only PCM format (uncompressed) files may be played.
This example creates an audio signal to an external speaker on BOOSTXL-AUDIO BoosterPack using PWM DAC method. MCU's PWM output passes through a basic R/C filter on the BoosterPack creates a simple, low-cost analog audio signal.
audio_playback_with_sdcard_by_SPIDAC DK-TM4C129x Similar to the above examples where .wav files are stored on the SD card; this example creates an audio signal to an external speaker on BOOSTXL-AUDO BoosterPack by sending the audio data stored in .wav file to a DAC on the BoosterPack through a SPI interface.
audio_playback_internal_wavefile_by_PWM DK-TM4C129x This example application demonstrates playing a .wav audio format stored internally on the flash memory. Several example .wav files can be selected during compile time by using the #define DEMO directive. Various preloaded .wav files digitized in different sampling rates (8 kHz, 16 kHz, 22.05 kHz, 41.1 kHz and 48 kHz) and resolutions (8 bit and 16 bit) can be selected. Only PCM format (uncompressed) wav files may be played..
This example creates an audio signal to an external speaker on BOOSTXL-AUDIO BoosterPack using PWM method. MCU's PWM output passes through a basic R/C filter on the BoosterPack creates a simple, low-cost analog audio signal.
audio_playback_internal_wavefile_by_SPIDAC DK-TM4C129x Similar to the above example but sends the audio data stored on the flash to a DAC on the BoosterPack through a SPI interface.
audio_playback_internal_wavefile_by_PWM_EKTM4C129 EK-TM4C1294XL Similar to audio_playback_internal_wavefile_by_PWM example but for EK-TM4C1294XL LaunchPad.
audio_playback_internal_wavefile_by_SPIDAC_EKTM4C129 EK-TM4C1294XL Similar to audio_playback_internal_wavefile_by_SPIDAC example but for EK-TM4C1294XL LaunchPad.
audio_playback_internal_wavefile_by_PWM_EKTM4C123 EK-TM4C123GXL Similar to audio_playback_internal_wavefile_by_PWM example but for EK-TM4C123GXL LaunchPad.
audio_playback_internal_wavefile_by_SPIDAC_EKTM4C123 EK-TM4C123GXL Similar to audio_playback_internal_wavefile_by_SPIDAC example but for EK- TM4C123GXL LaunchPad.