Digital Sound Recorder with AVR and DataFlash
Features
• Digital Voice Recorder
• 8-bit Sound Recording
• 8 kHz Sampling Rate
• Sound Frequency up to 4000 Hz
• Maximum Recording Time 4 1/4 Minutes
• Very Small Board Size
• Less than 700 Bytes of Code
Introduction
This application note describes how to
record, store and play back sound using any AVR microcontroller with A/D
converter, the AT45DB161B DataFlash memory and a few extra components.
This application note shows in detail
the usage of the A/D Converter for sound recording, the Serial
Peripheral Interface – SPI – for accessing the external DataFlash memory
and the Pulse Width Modulation – PWM – for playback. Typical
applications that would require one or more of these blocks are
temperature loggers, telephone answering machines, or digital voice
recorders.
The AT45DB161B DataFlash is a 2.7 volt
only, Serial-interface Flash memory. Its 16 Mbit of memory are organized
as 4096 pages of 528 bytes each. In addition to its main memory, the
DataFlash contains two SRAM data buffers of 528 bytes each. The buffers
allow a virtually continuous data stream to be written to the DataFlash.
The AT45DB161B uses an SPI serial
interface to sequentially access its data. This interface facilitates
hardware layout, increases system reliability, minimizes switching
noise, and reduces package size and active pin count. Typical
applications are image storage, data storage and digital voice storage.
The DataFlash operates at SPI clock frequencies up to 20 MHz with a
typical active read current consumption of 4 mA. It operates from a
single voltage power supply (from 2.7V to 3.6V) for both the write and
read operations.
Its serial interface is compatible to
the Serial Peripheral Interface – SPI – Modes 0 and 3, thus it can
easily be interfaced to the AVR microcontroller.
In this application note the AVR
AT90S8535 is used to take analog samples from a microphone and convert
them to digital values. Its built-in SPI controls data transfers to and
from the DataFlash. The PWM feature of the AVR is used for playback. The
code size is very small, the application will therefore also fit into
smaller AVR devices.
Source: Atmel Corporation
Source: Atmel Corporation
USEFUL LINKS
1.www.tricksnew.blogspot.com
2.www.freeminiproject.blogspot.com
3.www.freeplacementpaper.blogspot.com
4.www.annaunivquestionbanks.blogspot.com