ReadMe
Манифест
Электроника
Программное обеспечение:
ЖКИ
VLSI
Разные мелочи
Интерфейсы накопителей
Файловые системы
Элементы пользовательского интерфейса
Модули режимов
Координаторы
Отладочный координатор
Пользовательский интерфейс
Фотографии
 
==> Orfey2

ReadMe

На этой странице описан mp3-плейер, построенный на основе сигнального процессора VS1001 и поддерживающий IDE и SD -накопители. Чем он отличается от промышленных образцов, почему был задуман и реализован можно прочитать в "Манифесте".

Если же читателю причины не интересны, сразу перейдём к следствиям. Конструкция плейера в большей степени имеет програмные сложности, электрическая принципиальная схема у него проще, чем у отечественных программируемых калькуляторов. Поэтому бОльшая часть описания посвящена именно объяснению работы и устройства програмной части.

Что следует знать заранее, чтобы не было мучительно больно за бесцельно потраченное время:

  • Не очень вероятно, что по качеству звучания VS1001 достигает уровня промышленных плейеров iRiver. Но мне не с чем было сравнить.
  • Всё равно, звук в наушниках-вкладышах близко не валяется рядом с чем нибудь более серьезным - это отчётливо слышно даже с VS1001.
  • VS1001 не особенно хорошо дружит с высоким битрейтом. Т.е. пыхтит, как паровоз, но не всегда может без щелчков воспроизвести 320кбит. Тем более, если включить какие-нибудь опции, вроде удаления средних частот. Может быть, если поднять тактовую частоту будет успевать ?
  • Сейчас VLSI уже выпускает и продаёт более умные микрухи, которые понимают и ogg и, надеюсь, обладают более удобным электрическим интерфейсом. Для этого плейера была выбрана VS1001 просто потому, что на момент начала работы вариантов не было.
  • При всём внимании к удобству пользовательского интерфеса в плейере нет быстрой перемотки внутри трека назад. Только откат к началу. Да и перемотка вперёд на файле с высоким битрейтом не очень быстрая.
  • Нет никакой поддержки ID3 тегов. Я ими не пользуюсь и всегда вычищаю из своих файлов. Впрочем, они (теги) организованы таким образом, что могут и не мешать воспроизведению... А вот MP3-поток, закатанный в контейнеры вроде RIFF, просто не будет воспринят как mp3-файл.
  • Плейер не имеет режима shuffle - вопроизведения случайного трека, как не имеет и плейлистов. Даже порядок воспроизведения определяется только порядком файлов в каталогах (хотя есть внешняя утилита для его изменения).
  • Плейер не отличается низким энергопотреблением. Есть проблемы с подсветкой дисплея. Нет индикатора уровня заряда аккумуляторов.
  • Нет быстрых интерфейсов связи с компьютером. Т.е. заливка файлов происходит только путём подключения накопителей к компьютеру по их родным интерфейсам.
  • Нет эквалайзера.
  • Стоимость деталей плейера, особенно с учётом заказа по почте VS1001, сравнима с недорогими китайскими плейерами.
  • На этой странице не описана схема питания частей плейера, есть только несколько намёков.

В общем, железка на любителя. Вроде меня :)

Чем он всё таки лучше ?

  • Возможностью работы с IDE-винчестерами, что позволяет долго обходится без компьютера.
  • Быстрым запуском (менее секунды от подачи питания до начала воспроизведения (при работе с SD-картами)).
  • Удобным пользовательским интерфейсом (очень субъективно).
  • Ремонтнопригодностью (оно вам надо ?).
  • Возможностью вывода на экран текстовых файлов (уже не актуально, это многие плейеры стали уметь).

Софт

Скачать полный архив софта можно здесь (~250 Кб). В нём находятся: прошивка контроллера ATmega32 (Assembler), а так же программы для сопровождающего компьютера: редактор экранного шрифта (Pascal), программатор для замены (но не первоначальной прошивки !) firmware (C), FAT Sorter - сортировщик каталогов для файловых систем FAT* (C + Pascal). Все программы представлены как в скомпилированном виде (компьютерные - под FreeBSD), так и их исходные тексты. Здесь же находится файл состояний фьюзов ATmegи.

Платы

Скачать трассировку печатных плат ядра и клавиатуры можно здесь (~130 Кб). Платы представлены в трех форматах: в виде исходных файлов программы plats, в виде prn-файла (данные в формате PCL, их можно напрямую отправлять на принтер, 600 dpi) и в виде PNG-картинки (600 dpi).

Как ещё можно расширить функциональность программной части, не затрагивая аппаратную часть

  • Плавное снижение/восстановление громкости для ПАУЗЫ и перехода между треками;
  • Программирование регистра тактовой частоты декодера для изменения скорости воспроизведения (перемотка "без отвода головок");
  • Запоминание и восстановление позиции воспроизведения файла (для чего-то вроде звуковых книг);
  • Переход по треку на фиксированные интервалы (одним нажатием на 1, 5 и 10 минут назад и вперед);
  • Отдельно хранить путевые имена для разных носителей и разделов;
  • Можно попробовать, используя режим семплового воспроизведения, озвучивать нажатие кнопок;
  • А уж какие широкие возможности даёт анализ потока mp3 внутри центрального процессора... Хотя бы умение находить отдельные кадры;
  • Можно всяких игрушек накрутить: тетрисов/змеек/посадок на луну;
  • Наверное, если помимо имеющегося полноэкранного выбора файлов сделать также механизм в стиле Norton Commander - это иногда было бы удобно.
  • ...
  • ...

Некролог

Эта версия плейера очень рано ушла из жизни. Её жизнь была очень яркой и насыщенной событиями: каждый день она ходила со мной на работу и домой, а также сопровождала в поездках. Но срок был недолог - примерно с 08.2007 по 02.2008. Отказ постиг наиболее сложно добываемую в наших краях деталь - VLSI-шный декодер. Что-то случилось с аналоговой частью: перекос постоянной составляющей в каналах (в одном из каналов установилось ~0.6в, в другом ~1.8в вместо положенных ~1.2в). Это сопровождалось очень сильным шумом УНЧ в обеих каналах. Любопытно, что такое явление изредка случалось и раньше, но обычно быстро исчезало (в течении нескольких секунд), не позволяя провести какое-либо исследование. Болезнь перешла в хроническое состояние без каких либо явных внешний воздействий: плейер просто работал на свои родные наушники лёжа в уютном кармане.

Единственное предположение: производственный брак микросхемы. Все остальные части, в т.ч. входящие в аналоговую обвязку декодера, были признаны следствием полностью исправными.

После этого, до середины июня 2008 года, плейер использовался только для чтения книг. В июне ко мне прибыл заказанный из Москвы новый декодер, но теперь это уже был vs1011. Он успешно был интегрирован в старый корпус, пришлось лишь заменить печатную плату. Но это уже совсем другая история.

Владимир