vW90P71 0 smart music player 嚣 system design


Introduction With the development of multimedia, music players as consumer electronics products, their growing consumer demand prompted manufacturers to adopt more advanced technology to enhance the competitiveness of their products. In recent years, speech recognition technology has developed rapidly, and chips for speech recognition are emerging one after another. For example, SPCE061A MCU, which is planned to be launched by Sunplus University, is cost-effective and widely used. Combining speech recognition technology with the current popular embedded technology, designing a music player that not only has traditional button control functions but also can control voice has certain market prospects.

This article refers to the address: http://


1 system overall design The audio decoding mode is divided into hardware decoding and software decoding. The hardware decoding is divided into single chip and dual chip according to the arrangement of the system hardware. The two-chip form consists in separating the decoding chip and the control chip, and the decoding effect is excellent, but the price is expensive; the single chip form sacrifices the sound quality for simplifying the structure, but the cost performance is high. The software decoding function is more flexible and lower in cost, but it has higher requirements on the running speed and memory of the microcontroller. Both decoding methods have advantages and disadvantages. This paper proposes a compromise solution, which uses the single-chip form of ARM7 microprocessor and software decoding to optimize performance and meet market requirements. In addition, considering that voice recognition requires real-time response, a dedicated chip for speech recognition can be used, and the recognition rate is also ensured. Based on the above analysis, the host uses the W90P710 kit produced by Winbond, and the slave uses SPCE061A from Sunplus as the speech recognition chip. The W90P710-based smart music player framework is shown in Figure 1. The running process of the player is: the user opens the machine first to enter the function interface, and the function interface is divided into music mode, recording mode, training mode and file management. If the user does not have a voice library when the machine is turned on, the machine can only be controlled by the button, and the LCD screen prompts the user to enter the training mode to train the voice command to obtain his own voice library; if the training is successful, the player can be controlled to enter each mode by voice. Enter the music mode, when playing music, the LCD screen displays the basic information of the song, such as song title, singer, album name, etc., and can control the playing of the music by pressing the button and voice, such as the first one, the next one, pause, play, Exit and so on. In the other 3 modes, it can only be controlled by buttons.

2 Hardware Design According to the modular design principle, the whole intelligent music player is divided into main control module, voice recognition module, audio module, display module and keyboard.
2.1 Master and Slave Controller The W90P710 host is the core of system control and management. It realizes the functions of music playback, recording, storage, deletion and display of music files and recording files, and serial communication with MCU. The processor is based on ARM7TDMI and has the following features:
1 integrated LCD controller for easy display function;
2 The external bus interface has a wealth of chip select resources, which can expand large-capacity storage devices such as NAND Flash;
3 has 4 serial ports, which can easily realize serial communication and program debugging with Lingyang MCU.
At the same time, W90P710 can reach 80 MHz, low power consumption, and has excellent cost performance, especially suitable for system control.
The system's speech recognition chip is SPCE061A. It is a 16-bit single-chip microcomputer for speech recognition in Lingyang Technology. It has the characteristics of small size, low power consumption, good performance and easy development. The chip uses the Sunplus audio code SACM_S240 (2.4 kbps) to accommodate 210 s of voice data; has a serial device interface; 7-channel 10-bit voltage A/D converter (ADC) and a single channel sound Dedicated A/D converter. Sound A/D converter input channel with built-in microphone amplifier and automatic gain control (AGC) circuitry. When the voice mode is successfully started or in the training mode, the MCU collects the voice signal and recognizes it, and the recognition result is transmitted to the host through the serial interface.
2.2 Audio Module The audio module plays an important role in the whole system. It not only needs to realize the recording function, but also needs to play MP3 music, prompt sound and recording files. The audio interface of this system consists of AC97 audio interface bus interface and ALC203 audio codec. The ALC203 is an economical audio codec from Realtek that digitizes audio signals via the AC97 digital audio interface. Figure 2 is a specific implementation of the audio codec, ALC203 2, 3 feet connected to a 24.576 MHz crystal oscillator; 5, 6, 7, 10 feet and Winbond W90P710 AC97 digital audio interface AC97-DATO, AC97 -BCLK, AC97-DATI, AC97-SYNC are connected; MIC1 and MIC2 are connected to both ends of the microphone; HP-OUT-L and HP-OUT-R pins are respectively connected to the headphone jack through a pole capacitor; GPIO1 and GPIO0 can be adjusted by hardware Volume, but this design uses software for volume adjustment.

2.3 Other module design The LCD display screen is AUO's A030DL01 (320×240) industrial grade LCD screen. The color format of the LCD screen is RGB656 format, the color depth can reach 64K color, the file name and song basic information are displayed, and the color background image can be added due to the large screen space. Chinese character display is achieved by adding font software. The keyboard has 4×1 buttons, which is convenient for the user to control the player, and also ensures that the machine can be pressed and controlled when the voice mode is not working properly.

MPEGDEC_STREAM*MPEGDEC_open(char*filename, MPEGDEC_CTRL*ctrl);
Function description: Open MPEG audio file.
Parameters: filename is the audio file to be opened, and ctrl is the structure that controls the data decoding information.
Return value: If the open is successful, the structure pointer containing the data stream information and the decoding information is returned; if it fails, it returns NULL.
Void MPEGDEC_dose(MPEGDEC_STREAM*mpds);
Functional Description: Turn off MPEG audio files.
Parameters: mpds points to the audio file to be closed.
No return value.
Unsigned long MPEGDEC_decode_frame(MPEGDEC_STREAM*mpds, short*pcm[MPEGDEC_MAX_CHANNELS]);;
Function Description: Decode one frame of the currently open audio file.
Input: mpds points to the open audio file.
Output: pcm[] stores the decoded 16-bit audio data; pcm[0] stores the mono or left channel or channel 1 data; pcm[1] stores the right channel or channel 2 data.
Return value: Returns the number of audio data for decoding one frame; returning MPEG-DEC_ERR_EOF indicates that the current frame is the last frame; returning MPEG-DEC_ERR_BADFRAME indicates that the frame is corrupted.
3.2.2 Basic information structure of songs According to the ID3 V1.0 standard of MP3, the last 128 bytes of MP3 files are used to store information such as tag headers, song names, and singers. In order to display the basic information of the currently playing song on the LCD screen, a structure is given to read and store the information. This structure is defined as follows:


3.2.3 Play Main Process When the user selects the song to enter the play interface, the ARM7 host first sends a command word 0x01 to the MCU through the serial port to inform the slave to enter the function of identifying the “player” command. After the slave receives the command, it first determines whether the "player" command has been trained. If training, return 0x04, and the player's voice mode starts successfully; if it is not trained, it returns 0x06, LCD screen display reminds the user to train the library; if the slave is within the specified time (because of real-time requirements, here "predetermined time "200 ms" returns a different value or a non-return value, the player's voice mode fails to start. If the voice mode is successfully activated, the music is played after the frame is decoded. In the frame one frame cycle, the host needs to query the keyboard and the serial port to implement the "previous", "next", "play", "pause", "Exit" and adjust the volume. If the voice mode fails to start, you only need to query the keyboard. Each time the "exit" command is received, the host needs to send 0x05 to the MCU through the serial port before exiting the music mode, and notify the MCU to exit the mode synchronously; after receiving the command, the MCU needs to return 0x04 to inform the host that it has quit. The main flow of playback is shown in Figure 4. For reference on how to train voice commands, see the reference [5], which is not repeated here.

4 Experimental results using W90P710 development kit + Lingyang SPCE061A as hardware, embedded operating system μClinux, in the laboratory quiet and noisy (50 dB indoor noise when quiet, 60 dB when noisy), test player voice The efficiency of the model. Before testing the working efficiency of the voice mode, the button test is performed first, the test pass rate is 100%, the music is played smoothly, and the response satisfies the real-time requirement.
To make the voice mode work effectively, you first need to train the voice commands of the "player", that is, the five commands "play", "pause", "previous", "next", and "exit". The environment is critical during training and must be in a quiet laboratory environment. The five commands for training are not necessarily the above five words. As long as the corresponding meanings are expressed, such as the "previous one" and "next" commands are directly trained as "up" and "down". After training in a quiet environment in the laboratory, the author conducted voice tests in a quiet and noisy environment, with results of 96.8% and 77.8%, respectively. The experimental results show that in a quiet environment, the voice pass rate is very high; in a noisy environment, the voice pass rate is slightly lower, but can be used simultaneously with the button.


Conclusion This paper designed a smart music player consisting of the host W90P710, slave Lingyang SPCE061A microcontroller and its peripheral circuits. The hardware is mainly introduced to the audio module; the software briefly describes the MP3 decoding process and gives the relevant interface functions, and details the main playback process. Finally, on the basis of testing the real-time and correct response of the buttons, the voice mode response test was carried out in a quiet and noisy environment. The experimental results show that the player can not only control the keys but also voice control, and the voice. The control effect is good.


Hair Twist Sponge/Magic Hair Twist Sponge

Product Description:

1. 100% brand new and high quality 

2. Twist hair brush sponge
3. Like nudred or magic twist brush 
4. Great way to get dreads and twists! 
5. Save money and time by using this great new styling product.

6. Material: EVA + Sponge

Hair Twist Sponge Product

Sponge Product

Hair Twist Sponge,Hair Curly Sponge,Men Hair Curly Sponge,Women Hair Curly Sponge

Shenzhen Greater Industry Co., Ltd. , http://www.szgreater.net