Home
AN3997 - STMicroelectronics
Contents
1. Doc ID 022390 Rev 1 AN3997 Please Read Carefully Information in this document is provided solely in connection with ST products STMicroelectronics NV and its subsidiaries ST reserve the right to make changes corrections modifications or improvements to this document and the products and services described herein at any time without notice All ST products are sold pursuant to ST s terms and conditions of sale Purchasers are solely responsible for the choice selection and use of the ST products and services described herein and ST assumes no liability whatsoever relating to the choice selection or use of the ST products and services described herein No license express or implied by estoppel or otherwise to any intellectual property rights is granted under this document If any part of this document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products or services or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such third party products or services or any intellectual property contained therein UNLESS OTHERWISE SET FORTH IN ST S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY WITH RESPECT TO THE USE AND OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY FITNESS FOR A PARTICULAR PURPOSE AND T
2. wa AN3997 YI Application note Audio playback and recording using the STM32F4DISCOVERY 1 1 October 2011 Introduction This application note describes the audio wave playback and recording application based on the STM32F4xx microcontroller and the STM32F4 DISCOVERY board The audio data wave can be read from the internal Flash memory of the STM32F4xx microcontroller or on an external USB key through USB FS core in Host mode The recorded wave can be stored only in the external USB key The recording process is based on ST MP45DT02 MEMS microphone hardware with a PDM audio software decoding Library converting PDM data produced by the microphone to PCM data stored in the USB key The document is structured as follows e A description of the principles of the audio playback and recording firmware and how to run the firmware demonstration are provided in Section 2 Application overview Section 3 describes how to get started with the software and hardware The source code of this application is provided in the STM32F4 DISCOVERY board firmware package V1 1 0 and later under the following path Project Audio_playback_and_record Reference documents STM32F4DISCOVERY high performance Discovery board data brief Getting started with software and firmware environments for the STM32F4DISCOVERY Kit UM1467 e PDM audio software decoding on STM32 microcontrollers AN3998 STM32F40Xx reference manual RM0
3. 090 STM32F405xx STM32F407xx datasheet The above documents are available at www st com stm32f4 discovery Doc ID 022390 Rev 1 1 15 www st com Contents AN3997 Contents 1 IRMOGUCHION secesii pomm ANA AWAN MERA KAREN NG FAKE 1 1 1 Reference documents 2c eee eee eee 1 2 Application overview 00 0 0c e eee eee 4 2 1 Application description sssaaa cc ee 4 2 2 Firmware driver description 000 00 eee ee 6 2 3 Audio playback application 0 0 0 2 es 7 2 3 1 Playback from USB key 0 00 c eee teens 8 2 3 2 Playback from internal Flash 0 0 00 c eee eee 9 2 4 Audio record application aaa 9 3 How to use the audio playback and recording application 12 3 1 System requirements 00 c eee tee 12 3 2 Running the application 0 00 0 cee ee 12 4 Revision FUNSEON Yoni nes rm ml 14 2 15 Doc ID 022390 Rev 1 ky AN3997 List of figures List of figures Figure 1 Figure 2 Figure 3 Figure 4 Figure 5 Figure 6 Figure 7 Audio playback and record architecture 0000 eee ee 4 Audio playback and record modules 000 cee eee 5 Audio playback record firmware driver flowchart cece eee eens 7 Wave player procedures 2 eee 8 Recording application procedure 20 cee tees 10 Microphone connection 0 00 ete 11 Hardware environment 0 00 00s 12 Doc ID 022390 Rev 1
4. 3 15 Application overview AN3997 2 2 1 4 15 Application overview Application description The audio playback and record applications support two types of mass storage media They can play audio data in the internal Flash of the microcontroller or on an external USB key and record data only to an external USB key This is selected by defines in the main h file In the workspace toolbar select the project configuration e MEDIA IntFLASH e MEDIA USB KEY The firmware driver can e Play a stored wave from an external USB key or internal Flash e Record a wave in an external USB key Switch from play to record Figure 1 Audio playback and record architecture Button MS19886V1 This application is based on a STM32F4xx device and an STM32F4 DISCOVERY board The main features of the application are MEMS microphone Audio Codec DAC Headphone USB key if this the storage media used MEMS accelerometer Doc ID 022390 Rev 1 ky AN3997 Application overview The main STM32 modules used by this application are e USB peripheral configured in Host mode Mass Storage Class MSC is implemented to transmit and receive audio data from to USB key 12S peripheral configured in Master Transmitter mode and used to transmit audio data to the external audio codec DAC It is also used as a Master Receiver as an input clock for the MEMS microphone e DMA is used to trans
5. AY AN3997 How to use the audio playback and recording application 4 Program the firmware upgrade application in the internal Flash memory Open the project under Project Audio_playback_and_record with a toolchain of your choice Select MEDIA_IntFLASH or MEDIA_USB_KEY workspace depending on the mass storage media memory used Compile load it into target memory and run it Another option is to use the embedded Bootloader or any in system programming tool to reprogram this application easily Use STM32F4 Discovery Audio USB V1 0 0 hex or STM32F4 Discovery Audio IntFLASH V1 0 0 hex with any in system programming tool such as STM32 ST LINK Utility Use STM32F4 Discovery Audio USB V1 0 0 dfu or STM32F4 Discovery Audio IntFLASH V1 0 0 dfu with DFUse DFUse Demonstration tool For more details please refer to section 4 of UM1467 If you select MEDIA USB KEY configuration you should proceed as follows 1 Load a wave file to the root of a USB key this file should have the format described in Section 2 3 1 Playback from USB key Plug the USB key into the STM32F4DISCOVERY board through USB micro A Male to A Female cable connector CN5 Then follow the description provided in Section 2 2 Firmware driver description Doc ID 022390 Rev 1 13 15 Revision history AN3997 4 14 15 Revision history Table 1 Document revision history Date Revision Changes 27 Oct 2011 1 Initial release
6. HEIR EQUIVALENTS UNDER THE LAWS OF ANY JURISDICTION OR INFRINGEMENT OF ANY PATENT COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT UNLESS EXPRESSLY APPROVED IN WRITING BY TWO AUTHORIZED ST REPRESENTATIVES ST PRODUCTS ARE NOT RECOMMENDED AUTHORIZED OR WARRANTED FOR USEIN MILITARY AIR CRAFT SPACE LIFE SAVING OR LIFE SUSTAINING APPLICATIONS NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY DEATH OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE ST PRODUCTS WHICH ARE NOT SPECIFIED AS AUTOMOTIVE GRADE MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER S OWN RISK Resale of ST products with provisions different from the statements and or technical features set forth in this document shall immediately void any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever any liability of ST ST and the ST logo are trademarks or registered trademarks of ST in various countries Information in this document supersedes and replaces all information previously supplied The ST logo is a registered trademark of STMicroelectronics All other names are the property of their respective owners 2011 STMicroelectronics All rights reserved STMicroelectronics group of companies Australia Belgium Brazil Canada China Czech Republic Finland France Germany Hong Kong India Israel Italy Japan Malaysia Malta Morocco Philippines
7. Singapore Spain Sweden Switzerland United Kingdom United States of America www st com ki Doc ID 022390 Rev 1 15 15
8. aged with DEFINEs in the main h file Doc ID 022390 Rev 1 7 15 Application overview AN3997 2 3 1 8 15 Figure 4 Wave player procedures Initialize the audio DAC MEMS green LED On Start playing the wave blue LED blinking MEMS accelerometer first click Audio DAC is paused blue LED on stop blinking MEMS accelerometer second click Playing the wave blue LED blinking End of wave player Green LED blinking MS19889V1 At any time if USB key is selected as mass storage media if the user button is pressed playback is stopped and the record application is executed Playback from USB key In this demonstration any wave file stored on the USB Key can be opened using the FatFs file system and transferred to the internal SRAM block by block 1024 bytes using the DMA and the 12S interface The voice sampling period is read from the Wave File Header An audio DAC is connected to the 12S interface to play the stored wave files The name of the wave file loaded in the USB Key can be changed by modifying the WAVE NAME definition in the main h file The wave file name must have eleven characters Doc ID 022390 Rev 1 ky AN3997 Application overview 2 3 2 2 4 This application reads all wave files from the USB Key and displays only the WAV files that have the following format e Audio format PCM an uncompressed wave data format in which each value rep
9. mit data from the buffers to the I2S peripheral This significantly reduces the CPU load 12C peripheral is used to control several external devices like the audio Codec and to obtain data from this device SPI peripheral used to control the MEMS accelerometer e User button is used to monitor the applications playback or record Figure 2 Audio playback and record modules 2 3 Internal Flash Buttons STM32 MS19887V1 Note This application note is based on the STM32 USB On The Go OTG host and device library For more details about the USB Host stack and a mass storage demonstration please refer to the STM32F105 7 STM32F2xx and STM32F4xx USB On The Go host and device library user manual UM1021 Doc ID 022390 Rev 1 5 15 Application overview AN3997 2 2 6 15 Firmware driver description This application contains the following set of source files e main c contains the initialization code and starts the application depending on the selected MEDIA IntFLASH or MEDIA USB KEY configuration stm32f4xx_it c contains the interrupt handlers for the application e waveplayer c implements the functions used for playback e waverecorder c implements the functions used for record usb bsp c implements the board support package for the USB host library usbh_usr c includes the USB host library user callbacks After each board reset the wave player application runs from the selected mas
10. on It is based on a MEMS microphone Audio record is available only when USB key is selected as mass storage media Doc ID 022390 Rev 1 9 15 Application overview AN3997 10 15 Figure 5 Recording application procedure Audio record initialisation Configure the 12S at 1024 KHz as an input clock for MEMS microphone Configure the timer to initialize the recording time Store the microphone output data in buffer as signal orange LED blinking Filter the stored data to obtain a PCM signal at 16 KHz sampling frequency Store the filtered signal in the selected mass storage End of recording orange LED off and green LED blinking MS19890V1 The I2S peripheral is configured as master in order to generate the correct clock 1 024 MHz for the digital microphone The 1 024 MHz clock is calculated from the output audio streaming 16 KHz and the decimation factor 64 chosen for the demo 16000 Hz x 64 1 024 MHz Refer to AN3998 for PDM audio software decoding The 12S peripheral is configured to generate an interrupt each time 16 bit samples have been acquired a Doc ID 022390 Rev 1 AN3997 Application overview Figure 6 Microphone connection STM32F4 Internal Flash Microphone 12S clk to MIC clk MEMS MIC Data to 12S SD PDM Lib MS19891V1 The filtering process uses the PDM audio software decoding library This library implements several filters for the 1 bi
11. resents the amplitude of the signal at the time of sampling Sample rate such 8000 11025 16000 22050 44100 Hz or 48000 Hz e Bits per sample 16 bits audio sample data values are in the range 0 1024 Number of channels 2 stereo The wave from the USB Key is parsed to detect the sample rate in order to configure the 12S accordingly When the play back begins the blue LED starts toggling The playback is managed with double buffering A first buffer is used to store the wave data retrieved from the USB Key using the FatFs file system Once this buffer is filled The DMA sends its content to the I2S peripheral which transfers it to the external audio codec DAC The data from the USB key is stored in a second buffer Then these two buffers are swapped indefinitely till end of the playback process At any time if the USB Key is disconnected from the DISCOVERY board the blue LED is off the audio DAC is stopped and red LED goes on When the USB Key is reconnected again to the DISCOVERY board the red LED goes off and the last running application starts again Playback from internal Flash In this demonstration the wave file is stored in the internal Flash as a const array declared in the audio sample file After a reset the playback application starts playing the wave stored in the internal Flash after initializing the Audio DAC Audio record application The flowchart in Figure 5 describes the recording applicati
12. s storage media e If the selected media is USB key if the user button is pressed the playback application is stopped and the application switches to recording Each time the user button is pressed it stops the running application and switches to executing the other one If the selected media is internal Flash pressing the user button has no effect Doc ID 022390 Rev 1 ky AN3997 Application overview Figure 3 Audio playback record firmware driver flowchart Choose the mass media storage note 1 User button pressed Audio playback feature Audio record feature initialisation initialisation green LED On green LED On Play wave from the Record wave in the selected media storage selected media storage blue LED blinking orange LED blinking End of playback End of recording application application green LED blinking green LED blinking User button No pressed User button pressed Green LED blinking MS19888V1 1 If internal Flash is selected as mass storage media pressing the user button has no effect 2 3 Audio playback application sa The flowchart in Figure 4 describes the playback application It implements several control features like Pause Resume Repeat On Repeat Off The MEMS accelerometer is used to support Pause Resume When the wave player is running the first click on the board stops playing and the second click on it resume playing The Repeat On Repeat Off feature is man
13. t PDM high frequency signal output from a digital microphone and transforms it into a 16 bit PCM at a proper audio frequency The filtering process and the write into the USB key are managed with double buffering When the PDM Library is filtering microphone data the filtered data is stored in the USB key When a USB key is used for mass storage if the USB key is disconnected the recording is stopped and a red LED goes on When it is connected again the red LED goes off and the recording is started again Doc ID 022390 Rev 1 11 15 How to use the audio playback and recording application AN3997 3 3 1 3 2 12 15 How to use the audio playback and recording application System requirements Before running your application you should establish the connection with the STM32F4DISCOVERY board as shown in Fi Figure 7 Hardware environment USB type A to the minimum requirements are as follows Windows PC 2000 XP Vista 7 e USB type A to Mini B cable used to power the board through USB connector CN1 from a host PC and to connect to the embedded ST LINK V2 for debugging and programming e USB micro A male to B female cable used to connect the USB key through USB connector CN5 as a USB Device to the STM32F4xx s Host Headphone with male jack connector Running the application To run the Audio playback and recording application you should proceed as follows Doc ID 022390 Rev 1
Download Pdf Manuals
Related Search
Related Contents
ASUS RT-N56U GK7822 User's Manual CAPITULO 1 OBJETIVO Realizar los estudios necesarios para la Bordi Elite T3000 Elite T4000 Intel D845PESV Motherboard IND780 Weighing Terminal User's Guide CEMENTO INACESA ESPECIAL 6.6 L. SLOW COOKER Happy Phone C310 User Manual Trane CCAF User's Manual Copyright © All rights reserved.
Failed to retrieve file