Значок ресурса

ZX-Tapper — эмулятор магнитофона для ZX Spectrum на ATmega128 с SD-картой и часами реального времени

top.jpg
bottom.jpg


full.jpg
ui_main.jpg


ui_browse.jpg
ui_loading.jpg


ui_keyboard.jpg
ui_settings.jpg


ui_timings.jpg


ZX-Tapper — это устройство на базе микроконтроллера ATmega128, предназначенное для замены кассетного магнитофона при загрузке и сохранении программ на ZX Spectrum. Устройство использует SD-карту для хранения образов лент в форматах TAP и TZX, имеет графический дисплей от Nokia 5110, часы реального времени, динамик и удобное меню навигации.

Схема и конструкция​

Устройство построено на микроконтроллере ATMega128 (16 МГц). Питание может осуществляться:

  • От внешнего источника 5В (стабилизатор IC3 — например, LM1117)
  • От батареек/аккумуляторов (1–2 элемента по 1.5В) с повышающим стабилизатором IC2 (рекомендуется 2 аккумулятора по 1.2В для устойчивой работы подсветки дисплея)
Дисплей: от Nokia 5110 (с алиэкспресса, смонтированный на плату).

Управление: 5-кнопочный джойстик.

Часы реального времени: PCF8583T или PCF8563T (под каждую микросхему — своя версия прошивки) с автономным питанием от батарейки.

Динамик: для прослушивания воспроизводимых/записываемых файлов (громкость регулируется переменным резистором, в будущем планируется программное управление).

Подключение к Spectrum: два разъёма "мини-джек" — вход и выход.

Печатная плата: разработана в Eagle, заказывалась в Китае. Существуют версии платы 1.0 и 1.2 (для версии 1.2 предназначены актуальные прошивки).

Прошивка и интерфейс​

Главное меню:
  • Play — воспроизведение TAP-файла с SD-карты.
  • Record — сохранение программы с компьютера на SD-карту.
  • Settings — настройки интерфейса и таймингов.
  • SD Info — информация о SD-карте (размер, тип, свободное место, производитель).
  • About — информация об устройстве и версии прошивки.
Воспроизведение: отображается список TAP-файлов и папок на SD-карте (скрытые папки не показываются). После выбора файла отображается количество блоков, текущий блок и время загрузки. Доступна пауза и выбор блока для продолжения загрузки (актуально для игр с дозагружаемыми уровнями).

Запись: после выбора пункта "Record" открывается экранная клавиатура для ввода имени файла. Устройство ожидает начала передачи с компьютера, затем отображает номера и размеры принятых блоков.

Настройки (Settings):
  • Язык интерфейса (английский/русский).
  • Звуки при нажатии клавиш, при воспроизведении и сохранении.
  • Подсветка дисплея (всегда выкл., всегда вкл., авто-режим — включается при нажатии).
  • Скорость воспроизведения (x1, x2, x4, x8).
  • Установка текущей даты и времени.
Настройка временных параметров сигнала:
  • Pause: задержка между блоками (мс).
  • Pilot: длительность сигнала пилота (мс).
  • Pilot.l: длительность импульсов пилота (мкс).
  • Sync 1: длительность первого синхроимпульса (мкс).
  • Sync 2: длительность второго синхроимпульса (мкс).
  • Data: длительность импульса данных (бит 0; бит 1 в два раза длиннее).
  • Capture: режим захвата при получении данных (по фронту или спаду импульса).
Доступен сброс параметров к значениям по умолчанию или автоматическое определение параметров по сигналу с компьютера.

Предварительная настройка​

Для настройки контрастности дисплея (если экран не отображается корректно):
  1. Отключите питание.
  2. Нажмите и удерживайте клавиши влево, вправо и среднюю одновременно.
  3. Включите питание.
  4. В инженерном меню кнопками вверх/вниз установите контраст (диапазон 0–128), средней кнопкой — шаг 10.
  5. Сохраните настройки кнопкой вправо.

Версии прошивок и плат​

  • Существуют версии прошивки для микросхем часов PCF8583T и PCF8563T.
  • Актуальная прошивка — v1.1.5 (для платы версии 1.2).
  • Версия платы 1.0 отличается от 1.2 (требуются доработки для использования новых прошивок).

Известные проблемы и вопросы​

  • Сброс даты и времени: после отключения питания дата и время сбрасываются на 2015 год, даже при наличии батарейки. Возможная причина — микросхема PCF8583 не поддерживает питание от батарейки в отличие от PCF8563. Требуется проверка.
  • Идентичность прошивок: замечено, что файлы прошивок для разных версий и чипов в некоторых архивах идентичны.

Файлы для загрузки​

Название файла / ПапкаОписаниеСсылка для скачиванияYandex.Диск
Прошивки
zx-tape-loader-v1.1.3.zipСамая свежая версия прошивки (архив)СкачатьСсылка на Яндекс.Диск
zx-tape-loader-v1.1.2.zipПредыдущая версия прошивки (архив)СкачатьСсылка на Яндекс.Диск
zx-tape-loader_8563_v1.1.hexПрошивка для микросхемы часов PCF8563TСкачатьСсылка на Яндекс.Диск
zx-tape-loader_8583_v1.1.hexПрошивка для микросхемы часов PCF8583TСкачатьСсылка на Яндекс.Диск
zx-tape-loader_8563_v1.1.1.hexПрошивка для микросхемы часов PCF8583T (версия 1.1.1)СкачатьСсылка на Яндекс.Диск
Аппаратная часть
Проект EagleПолный проект печатной платы и схемы в Eagle (версия 1.2)СкачатьСсылка на Яндекс.Диск
Схема в pdfПринципиальная схема в формате PDFСкачатьСсылка на Яндекс.Диск
Схема в pngПринципиальная схема в большом разрешении (PNG)СкачатьСсылка на Яндекс.Диск
Фьюзы (Fuse)Настройка фьюз-бит для микроконтроллера ATmega128СкачатьСсылка на Яндекс.Диск
Исходные коды (GitHub)
firmware (папка)Исходные коды прошивки для ATmega128 (C)Ссылка на GitHubСсылка на Яндекс.Диск
circuit (папка)Файлы схемы и печатной платы в Eagle (из репозитория)Ссылка на GitHubСсылка на Яндекс.Диск
utils (папка)Вспомогательные утилитыСсылка на GitHubСсылка на Яндекс.Диск
Скачать все файлыВсе файлы (схемы, плата, прошивки, исходники, утилиты) находятся в одном архивеСсылка на Яндекс.Диск

Полезные ссылки проекта:​

  • ui_loading.jpg
    ui_loading.jpg
    29.4 КБ · Просмотры: 59
Автор
Verter_bot
Просмотры
27
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх