Устройство собрано на макетной плате Olimex SAM7-P64.
Возможная схема микрофонного усилителя см. в прилагаемом архиве. Питание усилителя
берётся с макетной платы, выход подключен ко входу AD7. Запись начинается нажатием
кнопки B1 (см. схему макетной платы). В процессе записи мигают светодиоды
LED1 - LED2. Останавливается запись нажатием на ту же кнопку. На SD карте
записывается файл test.wav в формате PCM 11кГц 8-бит моно, который можно
воспроизвести на компьютере. Карты объемом 64Мб должно хватить приблизительно
на 100 мин записи. В программе нет проверки на доступное свободное место на
карте, это необходимо учитывать. На выход RS232_0 выводится отладочная
информация (9600 8N1).
   Программа написана на gcc с использованием библиотеки
ESFL
Проект выполнен для среды WINARM. Следует отредактировать Makefile для
указания расположения библитотеки ESFL на диске (см. переменные ESFLPATH,
EXTRAINCDIRS). Мой файл config.h для библиотеки ESFL можно найти в папке config.
   Проект можно легко доработать в направлении проверки доступного места на
карте, записи нескольких файлов, установки даты-времени файла, поддержки других
форматов записи. Проект использует части кода других проектов, которые можно
найти в сети.
   Некоторые пояснения к коду программы. В качестве формата записи выбран
PCM формат, представляющий собой просто последовательные выборки уровня звука. Для
точности этих выборок во времени используется Periodoc Interval Timer (PIT) вызывающий
прерывания с частотой 11кГц. Обработчик прерывания записывает сигнал со входа АЦП и
записывает его в один из двух буферов, другой буфер в это время записывается на карту
памяти. Светодиоды показывают, какой из буферов выбран в текущий момент.
Файлы проекта
@tty