AN_252 FT800 Audio Primer

Application Note
AN_252
FT800 Audio Primer
Version 1.0
Issue Date: 2013-08-06
The FT800 provides an inexpensive solution for adding rich graphics, touch
and audio to an embedded system. This application note focuses on the
FT800 audio controller, related circuitry and programming techniques.
Use of FTDI devices in life support and/or safety applications is entirely at the user’s risk, and the
user agrees to defend, indemnify and hold FTDI harmless from any and all damages, claims, suits
or expense resulting from such use.
Future Technology Devices International Limited (FTDI)
Unit 1, 2 Seaward Place, Glasgow G41 1HH, United Kingdom
Tel.: +44 (0) 141 429 2777 Fax: + 44 (0) 141 429 2758
Web Site: http://ftdichip.com
Copyright © 2011 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Table of Contents
1
Introduction .................................................................................................................................... 2
2
Audio Engine ................................................................................................................................... 3
2.1
Sound Synthesizer ................................................................................................................... 3
2.2
Audio Files ............................................................................................................................... 5
2.2.1
3
4
Conversion Utility ............................................................................................................ 6
Hardware ........................................................................................................................................ 7
3.1
Power Supply .......................................................................................................................... 7
3.2
Buffer ...................................................................................................................................... 7
3.3
3-stage Low-Pass Filter ........................................................................................................... 8
3.4
Audio amplifier........................................................................................................................ 8
3.5
Complete Circuit ..................................................................................................................... 9
3.6
Layout considerations ............................................................................................................. 9
Programming ................................................................................................................................ 10
4.1
Initial Settings........................................................................................................................ 10
4.2
Play Synthesized Effects ........................................................................................................ 10
4.3
Load an Audio File into RAM_G ............................................................................................ 10
4.4
Play an Audio File .................................................................................................................. 11
5
Conclusion ..................................................................................................................................... 12
6
Contact Information...................................................................................................................... 13
Appendix A – References ...................................................................................................................... 14
Document References....................................................................................................................... 14
External References .......................................................................................................................... 14
Acronyms and Abbreviations ............................................................................................................ 14
Appendix B – List of Tables & Figures ................................................................................................... 15
List of Tables ..................................................................................................................................... 15
List of Figures .................................................................................................................................... 15
Appendix C – Revision History .............................................................................................................. 16
1
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
1 Introduction
What is EVE?
EVE, or the FTDI Embedded Video Engine, is a family of ICs designed to control TFT, resistive
touch displays. The first device in this family is the FT800 which in addition to controlling the
display also includes embedded support for touch control and audio output.
This document focuses on the audio features available through the FT800, from the audio circuitry
to convert the PWM output to the programming techniques for enabling and using the audio
controller.
2
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
2 Audio Engine
Various audio effects and files can be played by the FT800. The output is provided as a PWM
signal on a single pin, AUDIO_L. There are two audio sources, the Sound Synthesizer and the
Audio Playback.
2.1 Sound Synthesizer
Sound effects are pre-loaded in a ROM wave library and do not require the use of any of the FT800
RAM space. Most audible user feedback can be provided through these effects, such as a click
when an on-screen button is pressed, DTMF tones for telecom or an alarm panel warning. Most
effects will play once and then stop. Others will play continuously. The full list of tones and
features are shown below:
Value
Effect
Continuous
Value
Effect
Continuous
Y
Pitch
adjust
N
32h
DTMF 2
Y
Pitch
adjust
N
00h
Silence
01h
02h
square wave
sine wave
Y
Y
Y
Y
33h
34h
DTMF 3
DTMF 4
Y
Y
N
N
03h
04h
sawtooth wave
triangle wave
Y
Y
Y
Y
35h
36h
DTMF 5
DTMF 6
Y
Y
N
N
05h
06h
Beeping
Alarm
Y
Y
Y
Y
37h
38h
DTMF 7
DTMF 8
Y
Y
N
N
07h
08h
Warble
Carousel
Y
Y
Y
Y
39h
40h
DTMF 9
harp
Y
N
N
Y
10h
11h
1 short pip
2 short pips
N
N
Y
Y
41h
42h
xylophone
tuba
N
N
Y
Y
12h
13h
3 short pips
4 short pips
N
N
Y
Y
43h
44h
glockenspiel
organ
N
N
Y
Y
14h
5 short pips
N
Y
45h
trumpet
N
Y
15h
6 short pips
N
Y
46h
piano
N
Y
16h
17h
7 short pips
8 short pips
N
N
Y
Y
47h
48h
chimes
music box
N
N
Y
Y
18h
19h
9 short pips
10 short pips
N
N
Y
Y
49h
50h
bell
click
N
N
Y
N
1Ah
1Bh
11 short pips
12 short pips
N
N
Y
Y
51h
52h
switch
cowbell
N
N
N
N
1Ch
1Dh
13 short pips
14 short pips
N
N
Y
Y
53h
54h
notch
hihat
N
N
N
N
1Eh
1Fh
15 short pips
16 short pips
N
N
Y
Y
55h
56h
kickdrum
pop
N
N
N
N
23h
2Ch
DTMF #
DTMF *
Y
Y
N
N
57h
58h
clack
chack
N
N
N
N
30h
31h
DTMF 0
DTMF 1
Y
Y
N
N
60h
61h
mute
unmute
N
N
N
N
Table 2.1 FT800 Synthesized Sound Effects
3
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Many of the effects allow pitch control (MIDI note), so various tones can be generated.
MIDI note assignments are used:
MIDI note
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
ANSI note
A0
A#0
B0
C1
C#1
D1
D#1
E1
F1
F#1
G1
G#1
A1
A#1
B1
C2
C#2
D2
D#2
E2
F2
F#2
G2
G#2
A2
A#2
B2
C3
C#3
D3
D#3
E3
F3
F#3
G3
G#3
A3
A#3
B3
C4
C#4
D4
D#4
E4
Freq (Hz)
27.5
29.1
30.9
32.7
34.6
36.7
38.9
41.2
43.7
46.2
49.0
51.9
55.0
58.3
61.7
65.4
69.3
73.4
77.8
82.4
87.3
92.5
98.0
103.8
110.0
116.5
123.5
130.8
138.6
146.8
155.6
164.8
174.6
185.0
196.0
207.7
220.0
233.1
246.9
261.6
277.2
293.7
311.1
329.6
MIDI note
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
ANSI note
F4
F#4
G4
G#4
A4
A#4
B4
C5
C#5
D5
D#5
E5
F5
F#5
G5
G#5
A5
A#5
B5
C6
C#6
D6
D#6
E6
F6
F#6
G6
G#6
A6
A#6
B6
C7
C#7
D7
D#7
E7
F7
F#7
G7
G#7
A7
A#7
B7
C8
Standard
Freq (Hz)
349.2
370.0
392.0
415.3
440.0
466.2
493.9
523.3
554.4
587.3
622.3
659.3
698.5
740.0
784.0
830.6
880.0
932.3
987.8
1046.5
1108.7
1174.7
1244.5
1318.5
1396.9
1480.0
1568.0
1661.2
1760.0
1864.7
1975.5
2093.0
2217.5
2349.3
2489.0
2637.0
2793.8
2960.0
3136.0
3322.4
3520.0
3729.3
3951.1
4186.0
Table 2.2 MIDI Note/Pitch Values
4
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Sound synthesis is controlled by the following registers:



REG_SOUND
o Bits 31-16 = Don’t care
o Bits 15-8 = MIDI note (pitch)
o Bits 7-0 Effect
REG_PLAY
o Bits 31-1 = Don’t care
o Bit0 = Start Play / Play Status

Write = 1 to start playing the selection in REG_SOUND

Read = 1 indicates the effect is currently playing

Read = 0 indicates the effect has completed
REG_VOL_SOUND
o Bits 31-8 = don’t care
o Bits 7-0 = output volume
Reads and writes to FT800 memory space are handled through the “little endian” format, where
the first byte will be the least significant. For example, consider a piano effect (0x46) playing A4
(0x45). The data on the SPI or I2C interface would consist of a Host Memory Write sequence with
the following data, on order:
0x90
0x24
0x84
0x46
0x45
0x00
0x00
=
=
=
=
=
=
=
Host Memory Write transfer (0x80) plus first byte of register address (0x10)
second byte of register address
third byte of register address
piano effect
note/pitch = A4 (440Hz)
don’t care, optional
don’t care, optional
Note that the last two bytes do not have to be written, so a 16-bit Host Memory Write can actually
satisfy the values needed in the register. Further explanation of the Host Memory Write, Host
Memory Read and Host Memory Command data transfers are found in AN_240 FT800 From the
Ground Up.
2.2 Audio Files
There may be applications where something more than simple tone synthesis is necessary. For
example a voice prompt or other announcement may be necessary to give the user specific
instructions. The FT800 supports playback of files in the following single-channel (mono) formats:



8-bits signed PCM – uncompressed raw audio
8-bits µLAW – non-linear compressed audio
4-bits IMA-ADPCM – further compressed µLAW where each byte contains two 4-bit
samples
The FT800 has 256Kbytes of object ram (RAM_G) to hold video objects (images and fonts) and
audio objects (recorded sounds). The space must be managed by the host MCU so that
information is not overwritten until after it is no longer required.
Audio files are loaded through the Host Memory Write transaction to available space and are
required to be 8-byte aligned (64-bit).
Once an audio file is loaded into the RAM_G memory, playback is controlled by the following
registers:



REG_PLAYBACK_START
o Bits 31-20 = don’t care
o Bits 19-0 = 20-bit starting address of the file within RAM_G
REG_PLAYBACK_LENGTH
o Bits 31-20 = don’t care
o Bits 19-0 = 20-bit length of the file within RAM_G
REG_PLAYBACK_FREQ
o Bits 31-16 = don’t care
o Bits 15-0 = 16-bit Playback sampling rate frequency, in Hz
5
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875





2.2.1
Clearance No.: FTDI# 344
REG_PLAYBACK_FORMAT
o Bits 31-2 = don’t care
o Bits 1-0 = 2-bit Playback format

0 = Linear, or uncompressed PCM

1 = µLaw

2 = ADPCM

3 = undefined
REG_PLAYBACK_LOOP
o Bits 31-1 = don’t care
o Bit 0 = 1-bit Playback style

0 = play once

1 = play continuous
REG_PLAYBACK_PLAY
o Bits 31-1 = don’t care
o Bit 0 = Start Play / Play Status

Write = 0 or 1 to start playing the selection in REG_SOUND

Read = 1 indicates the file is currently playing

Read = 0 indicates the file has completed
REG_PLAYBACK_READPTR
o Bits 31-20 = don’t care
o Bits 19-0 = 20-bit pointer of the current playback location
REG_VOL_PB
o Bits 31-8 = don’t care
o Bits 7-0 = output volume
Conversion Utility
FTDI provide an audio file conversion utility called “AUD_CVT” to take a common file format and
create the three types of files supported by the FT800. A link to this utility is provided in the
“Appendix A – References” section of this document.
The source file is assumed to be a raw (uncompressed) 16bit PCM, mono WAV file. Such a file can
be created through a commonly available audio editing program, such as Audacity. Once the
source file is available, simply run the utility at a command prompt:
aud_cvt -i inputfilename -f format
where “format”
= 0 for 8-bit signed PCM
= 1 for 8-bit µLaw
= 2 for 4-bit IMA ADPCM
A folder with the resulting files will be created. These files can then be used to load into the
RAM_G memory area of the FT800.
The audio conversion utility will output a raw and a compressed file for each selected format. It
may be helpful at the host MCU to store the compressed files, and then expand them into the
RAM_G buffer when needed. See Section 4 for details.
6
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
3 Hardware
The audio output provided by the FT800 consists of a single-channel PWM signal, AUDIO_L. This
signal needs to be converted to analog so that it may be heard through a speaker. The conversion
consists of several stages.
In addition to AUDIO_L, the FT800 interrupt output can be utilized. An interrupt can be generated
whenever an effect or file has completed playing. This is useful to queue the host MCU to perform
another FT800 task. Interrupt circuitry is not shown here.
3.1 Power Supply
In general, digital video signals tend to produce a bit of noise on the power and ground rails,
especially when many signals are transitioning simultaneously. Setting the FT800 “CSPREAD”
feature will offset some of the transitions on the video output, but noise will still be present.
The first defense against high frequency noise on the audio signals is a clean power supply.
Ferrites and capacitors between power and ground will help reduce the noise so that the output of
any buffers or amplifiers using the power supply will not have the noise superimposed on the
audio. The circuit below is one example of an audio power supply filter:
AUD_3V3
3V3
FB1
600R/1A
FB2
C23
C22
C21
1 0 n F
1 0 0 u F 0.1uF
600R/1A
G N D
A G N D
Max peak current ~400mA for 8-ohm speaker
Figure 3.1 Audio Power Supply Filter
3.2 Buffer
With the power supply cleaned up, next in line is a logic-level buffer to provide enough drive
current for the subsequent stage. Note that the buffer is powered by the audio power supply:
AUD_3V3
U 5
5
AUDIO_L
AUDIO_L
R 8
3 3 R
2
O E
4
1
3
AUD_3V3
C17
A G N D
0.1uF
SN74LVC1G125DBVR
A G N D
Figure 3.2 Audio PWM Buffer
7
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
3.3 3-stage Low-Pass Filter
The output of the buffer is then fed into a 3-stage low-pass filter. This provides 60dB / octave
attenuation of frequencies above the cut-off frequency. This steep filter further aids in digital
noise suppression. In this example, the cut-off frequency is approximately 34kHz:
R 9
R10
1 k
C13
4.7nF
A G N D
R11
1 k
C14
4.7nF
1 k
A G N D
C15
4.7nF
A G N D
Figure 3.3 Audio Low-Pass Filter (3rd Order)
Since the AUDIO_L output is referenced to the 3.3V VCC power supply, the audio signal is
centered on ~1.65V at the R11/C15 junction.
3.4 Audio amplifier
The final stage in the audio circuit is an amplifier. C16 blocks any DC offset before the input. This
amplifier will directly drive a speaker. Component values are derived from the amplifier datasheet.
From filter
AUD_3V3
R12
C16
0.47uF
R13
10k/1%
U 6
4
3
AUDIO_SHDN#
R16
20k/1%
3 3 R
1
2
V
V
V
SHDN G
BYPASSG
ININ+
D
O
O
N
N
D
+
D
D
6
5
8
7
9
S P +
S P -
S P 1
J3
J4
1W/8Ohm
TPA6205A1
R15 20k/1%
R14
10k/1%
R17
4 7 k
A G N D
C18
0.47uF
A G N D
C19
0.22uF
A G N D
C20
1 u F
A G N D A G N D
Figure 3.4 Audio Amplifier
8
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
3.5 Complete Circuit
The complete audio circuit shows all of the components together:
AUD_3V3
5
U 5
AUDIO_L
AUDIO_L
R 8
3 3 R
2
4 R 9
R10
1 k
O E
A G N D
SN74LVC1G125DBVR
0.1uF
1 k
C14
4.7nF
C15
4.7nF
A G N D
A G N D
A G N D
3
AUD_3V3
C17
R11
1 k
C13
4.7nF
1
A G N D
From filter
AUD_3V3
R12
C16
0.47uF
R13
10k/1%
U 6
4
3
AUDIO_SHDN#
R16
3 3 R
1
2
AUD_3V3
3V3
FB1
FB2
G N D
ININ+
V
V
V
SHDN
G
BYPASS G
D
O
O
N
N
6
D
5
+
8
7
D
9
D
S P 1
S P + J3
S P - J4
1W/8Ohm
TPA6205A1
R15 20k/1%
R14
600R/1A
20k/1%
10k/1%
C21
C22
1 0 0 u F 0.1uF
C23
1 0 n F
600R/1A
A G N D
Max peak current ~400mA for 8-ohm speaker
R17
4 7 k
C18
0.47uF
A G N DA G N D
C19
0.22uF
A G N D
C20
1 u F
A G N AD G N D
Figure 3.5 FT800 Audio Circuit
3.6 Layout considerations
Careful layout techniques are required:



The audio circuit should be physically separated as far from the LCD signals as possible.
Separate audio power and ground planes from the system power and ground.
Use a single connection point between audio power and system power; likewise, use a
single connection point between audio ground and system ground. In this example, the
connection points are ferrite beads.
9
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
4 Programming
The audio features of the FT800 are accessed through the same Display List, along with the video
and touch panel features. For example, every second a clock widget with a second hand could be
drawn followed by a “tick” sound. Both the widget and sound reside in the same Display List.
New Display Lists would then be sent to the FT800 every second, each containing both the widget
with the new second hand position and another audio “tick”.
For the examples below, “wr32(address, value)” indicates the MCU would write the value
(VOLUME, frequency, etc.) to the address within the display list (RAM_DL + n) or register (e.g.
REG_VOL_SOUND). This notation is used throughout other FT800 documents.
4.1 Initial Settings
As part of the FT800 initialization, set the volume to zero to eliminate any pops or clicks while all
the initial settings are being sent:



wr8(REG_VOL_SOUND, 0);
wr8(REG_VOL_PB, 0);
wr16(REG_SOUND, 0x0062);
// Set Synthesizer volume to zero
// Set Audio File Playback volume to zero
// Play “mute” sound (optional)
4.2 Play Synthesized Effects
Only a few Display List elements are required in order to play a synthesized effect.
To play an effect:
1.
2.
3.
4.
wr8(REG_VOL_SOUND, VOLUME);
wr16(REG_SOUND, (MIDI_NOTE << 8 + EFFECT));
wr8(REG_PLAY, 1);
rd8(REG_PLAY);
//
//
//
//
set the volume
set the effect and pitch
start playing
check whether done
An interrupt can also be generated for the host MCU when play has completed.
To stop playing a continuous effect:
1. wr16(REG_SOUND, 0);
2. wr8(REG_PLAY, 1);
3. rd8(REG_PLAY);
// set effect to “silence”
// start playing silence
// check whether done
4.3 Load an Audio File into RAM_G
Audio and video data are treated equally in the RAM_G element memory. The command processor
is sent the starting address and data to store, and then the MCU obtains the last used end pointer
so another element may be copied in.
There are two methods of loading an audio file into the RAM_G element memory:
Uncompressed Data
Data from the raw audio file is written directly to RAM_G. The MCU, knowing the data_length,
knows where to put the next element.
1. wr32(cmdBufferWr + n,
2. wr32(cmdBufferWr + n + 4,
3. wr32(cmdBufferWr + n + 8,
4. wr8(cmdBufferWr + n + 12,
5. wr8(cmdBufferWr + n + 13,
6. wr8(cmdBufferWr + n + …,
0xffffff1a);
RAM_G + offset);
// CMD_MEMWRITE
// An 8-byte aligned location in
// RAM_G. If this is the first
// element, then offset = 0
data_length);
// length of audio data
// (8-byte aligned / zero-pad)
Byte 0);
// First byte of audio data
Byte 1);
// Second byte of audio data
<Bytes 2 through data_length>
// … the rest of the data
10
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
7. MCU sets new RAM_G starting offset = offset + data_length for memory management
Compressed Data
Data from the compressed audio file is written to RAM_G through the INFLATE command. This
decompresses “ZLIB” compressed data into RAM_G. Once the uncompressed data is written, the
new end-pointer is obtained for the MCU to keep track of the RAM_G elements.
1. wr32(cmdBufferWr + n,
2. wr32(cmdBufferWr + n + 4,
0xffffff22);
RAM_G + offset);
3. wr8(cmdBufferWr + n + 12,
Byte 0);
4. wr8(cmdBufferWr + n + 13,
Byte 1);
5. wr8(cmdBufferWr + n + …,
<remainder of data>
//
//
//
//
//
//
//
//
CMD_INFLATE
An 8-byte aligned location in
RAM_G. If this is the first
element, then offset = 0
First byte of compressed
audio data
Second byte of compressed
audio data
// … the rest of the compressed
// audio data
6. wr32(cmdBufferWr + n + <zlib_size>, 0xffffff22
// CMD_GETPTR
7. rd32(new RAM_G offset)
// Assume utility already
// padded data
8. MCU stores the new offset for RAM_G memory management
Note that if the audio conversion utility is used, both RAW and ZLIB files are created. When
writing MCU firmware, the RAW file size can also be used as the end point of the uncompressed
data.
4.4 Play an Audio File
Now that audio data is stored in RAM_G, it can be played through the FT800:
1. wr32(REG_PLAYBACK_START, RAM_G + offset);
2.
3.
4.
5.
6.
7.
8.
9.
wr32(REG_PLAYBACK_LENGTH, length);
wr16(REG_PLAYBACK_FREQ, frequency);
wr8(REG_PLAYBACK_FORMAT, format);
wr8(REG_VOL_PB, volume);
wr8(REG_PLAYBACK_LOOP, play_once);
wr8(REG_PLAYBACK_PLAY, 1);
rd8(REG_PLAYBACK_PLAY)
rd32(REG_PLAYBACK_READPTR)
//
//
//
//
//
//
//
//
//
//
//
RAM_G element memory
offset is managed by host MCU
file length, in bytes
playback sampling frequency
file format
playback volume
play once or forever?
write a “1” to start playback
playback complete (optional)
how far along and how loud?
(optional)
11
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
5 Conclusion
The FT800 provides an easy way to incorporate audio along with graphics displays and touch
feedback into products that could not otherwise afford this capability. A common programming
interface provides developers with a single method to manipulate the FT800 regardless of the data
types.
With only the FT800 between the MCU and the LCD display, a vivid graphics experience with touch
and audio is now possible.
12
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
6 Contact Information
Head Office – Glasgow, UK
Branch Office – Tigard, Oregon, USA
Future Technology Devices International Limited
Unit 1, 2 Seaward Place, Centurion Business Park
Glasgow G41 1HH
United Kingdom
Tel: +44 (0) 141 429 2777
Fax: +44 (0) 141 429 2758
Future Technology Devices International Limited
(USA)
7130 SW Fir Loop
Tigard, OR 97223-8160
USA
Tel: +1 (503) 547 0988
Fax: +1 (503) 547 0987
E-mail (Sales)
E-mail (Support)
E-mail (General Enquiries)
[email protected]
[email protected]
[email protected]
E-Mail (Sales)
E-Mail (Support)
E-Mail (General Enquiries)
[email protected]
[email protected]
[email protected]
Branch Office – Taipei, Taiwan
Branch Office – Shanghai, China
Future Technology Devices International Limited
(Taiwan)
2F, No. 516, Sec. 1, NeiHu Road
Taipei 114
Taiwan , R.O.C.
Tel: +886 (0) 2 8791 3570
Fax: +886 (0) 2 8791 3576
Future Technology Devices International Limited
(China)
Room 1103, No. 666 West Huaihai Road,
Shanghai, 200052
China
Tel: +86 21 62351596
Fax: +86 21 62351595
E-mail (Sales)
E-mail (Support)
E-mail (General Enquiries)
E-mail (Sales)
E-mail (Support)
E-mail (General Enquiries)
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
Web Site
http://ftdichip.com
System and equipment manufacturers and designers are responsible to ensure that their systems, and any Future Technology
Devices International Ltd (FTDI) devices incorporated in their systems, meet all applicable safety, regulatory and system-level
performance requirements. All application-related information in this document (including application descriptions, suggested
FTDI devices and other materials) is provided for reference only. While FTDI has taken care to assure it is accurate, this
information is subject to customer confirmation, and FTDI disclaims all liability for system designs and for any applications
assistance provided by FTDI. Use of FTDI devices in life support and/or safety applications is entirely at the user’s risk, and the
user agrees to defend, indemnify and hold harmless FTDI from any and all damages, claims, suits or expense resulting from
such use. This document is subject to change without notice. No freedom to use patents or other intellectual property rights is
implied by the publication of this document. Neither the whole nor any part of the information contained in, or the product
described in this document, may be adapted or reproduced in any material or electronic form without the prior written consent
of the copyright holder. Future Technology Devices International Ltd, Unit 1, 2 Seaward Place, Centurion Business Park,
Glasgow G41 1HH, United Kingdom. Scotland Registered Company Number: SC136640
13
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Appendix A – References
Document References
DS_FT800 FT800 Datasheet
PG_FT800 FT800 Programmer Guide
AN_240 FT800 From the Ground Up
External References
Audacity Open Source audio recording and editing software
Acronyms and Abbreviations
Terms
IMA-ADPCM
Description
Further compressed µLaw data containing two 4-bit samples per byte
MCU
Microcontroller (unit)
PCM
Pulse Coded Modulation
PWM
Pulse Width Modulation
RAW
Uncompressed data
µLaw
mu-law Companding Algorithm
ZLIB
Lossless compressed data algorithm
14
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Appendix B – List of Tables & Figures
List of Tables
Table 2.1 FT800 Synthesized Sound Effects ............................................................................ 3
List of Figures
Figure 3.1 Audio Power Supply Filter ..................................................................................... 7
Figure 3.2 Audio PWM Buffer ................................................................................................ 7
Figure 3.3 Audio Low-Pass Filter (3rd Order) .......................................................................... 8
Figure 3.4 Audio Amplifier .................................................................................................... 8
Figure 3.5 FT800 Audio Circuit .............................................................................................. 9
15
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Appendix C – Revision History
Document Title:
AN_252 FT800 Audio Primer
Document Reference No.:
FT_000875
Clearance No.:
FTDI# 344
Product Page:
http://www.ftdichip.com/FTProducts.htm
Document Feedback:
Send Feedback
Revision
1.0
Changes
Initial Release
Date
2013-08-06
16
Copyright © 2013 Future Technology Devices International Limited
Application Note
AN_252 FT800 Audio Primer
Version 1.0
Document Reference No.: FT_000875
Clearance No.: FTDI# 344
Revision History
Revision history (internal use only, please clearly state all changes here before saving the file)
Revision
Date
YYYY-MM-DD
Changes
Editor
Draft
2013-07-23
Initial Outline
Bob Recny
Draft
2013-08-01
Copy ready for review – Section 3 images need
re-drawn
Bob Recny
Draft
2013-08-02
Reviewed. Minor edits.
G Lunn
Added external link to Audacity in References
Draft
2013-08-02
Added Table 2 caption
Bob Recny
Replaced section 3 images
1.0
2013-08-06
Approved LCE/DS
G Lunn
17
Copyright © 2013 Future Technology Devices International Limited