beautypg.com

Mp3 buffer, Interrupt request, Mp3 song playing – Rainbow Electronics AT89C51SND1C User Manual

Page 76: At8xc51snd1c

background image

76

AT8xC51SND1C

4109E–8051–06/03

Table 83. Sample Duplication Factor

MP3 Buffer

In song playing mode, the audio stream comes from the MP3 decoder through a buffer.
The MP3 buffer is used to store the decoded MP3 data and interfaces to the decoder
through a 16-bit data input and data request signal. This signal asks for data when the
buffer has enough space to receive new data. Data request is conditioned by the
DREQEN bit in AUDCON1 register. When set, the buffer requests data to the MP3
decoder. When cleared no more data is requested but data are output until the buffer is
empty. This bit can be used to suspend the audio generation (pause mode).

Interrupt Request

The audio interrupt request can be generated by 2 sources when in C51 audio mode: a
sample request when SREQ flag in AUDSTA register is set to logic 1, and an under-run
condition when UDRN flag in AUDSTA register is set to logic 1. Both sources can be
enabled separately by masking one of them using the MSREQ and MUDRN bits in
AUDCON1 register. A global enable of the audio interface is provided by setting the
EAUD bit in IEN0 register.

The interrupt is requested each time one of the 2 sources is set to one. The source flags
are cleared by writing some data in the audio buffer through AUDDAT, but the global
audio interrupt flag is cleared by hardware when the interrupt service routine is
executed.

Figure 52. Audio Interface Interrupt System

MP3 Song Playing

In MP3 song playing mode, the operations to do are to configure the PLL and the audio
interface according to the DAC selected. The audio clock is programmed to generate
the 256·Fs or 384·Fs as explained in Section "Clock Generator", page 74. Figure 53
shows the configuration flow of the audio interface when in MP3 song mode.

DUP1

DUP0

Factor

0

0

No sample duplication, DAC rate = 8 kHz (C51 rate).

0

1

One sample duplication, DAC rate = 16 kHz (2 x C51 rate).

1

0

2 samples duplication, DAC rate = 32 kHz (4 x C51 rate).

1

1

Three samples duplication, DAC rate = 48 kHz (6 x C51 rate).

SREQ

AUDSTA.7

Audio

Interrupt

Request

UDRN

AUDSTA.6

MSREQ

AUDCON1.5

EAUD

IEN0.6

MUDRN

AUDCON1.4