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

TZXDuino-Compact (lostretrotapes) — компактный эмулятор кассетного магнитофона для ZX Spectrum

TZXDuino Compact v1.01 In Action.jpg


TZXDuino-Compact — это компактная плата-эмулятор кассетного магнитофона для ретрокомпьютеров (ZX Spectrum и др.), позволяющая загружать программы с SD-карты через аудиовыход вместо реальной магнитофонной ленты. Репозиторий: github.com/lostretrotapes/TZXDuino-Compact. README в репозитории не заполнен, поэтому разбор построен на содержимом файлов проекта и общем контексте семейства TZXDuino.


1. Содержимое репозитория​

Файл/папкаНазначение
gerbers/Производственные Gerber-файлы платы
images/Фотографии/иллюстрации платы
ino/Исходный код прошивки (Arduino-скетч)
TZXDuino Compact v1.01.sch / .lib / .net / .pro / .cmp / .kicad_pcbПолный проект в KiCad (старого формата, с отдельными .sch/.lib, т.е. KiCad 4/5) — схема, библиотека символов, netlist, PCB-файл, файл соответствия компонентов (.cmp)
TZXDuino_Compact_v1.00_BOM.txtПеречень компонентов (см. ниже)
TZXDuino_Compact_v1.01.pdfЭкспортированный чертёж/схема в PDF (48.4 КБ)

Обрати внимание на расхождение версий: PCB/схема помечены как v1.01, а BOM — как v1.00 (то есть BOM мог не успеть обновиться после правки платы на одну ревизию).


2. Идея устройства (общий принцип семейства TZXDuino)​

TZXDuino — открытый проект (изначально Andrew Beer & Duncan Edwards, затем множество форков: CASduino, MaxDuino, ArduiTape, Digiwavuino) — эмулятор кассетного плеера: считывает .TZX/.TAP/.CDT/.O/.P/.UEF файлы с SD-карты и конвертирует их в аудиосигнал, подаваемый на вход "MIC/EAR" ретрокомпьютера — то есть полностью заменяет физический магнитофон, но воспроизводит цифровые образы программ. Эта конкретная реализация — "Compact"-вариант: в отличие от классического TZXDuino на модуле Arduino Nano, здесь ATmega328P распаян прямо на плате (аналогично коммерческому "TZXDuino-mini"), что делает устройство компактнее и дешевле.


3. Электронная начинка (по BOM v1.00)​

КомпонентНазначение
IC1 — ATMEGA328P-P (DIP-28)Основной микроконтроллер — воспроизведение звука из TZX/TAP, управление интерфейсом
X1 — кварц/резонатор 16 МГцТактирование ATmega328P (стандартная частота для Arduino-совместимых прошивок)
DS1 — OLED-дисплей 128×64 I2CЭкран интерфейса (список файлов, статус воспроизведения)
MOD1 — Catalex Micro-SD модульЧтение файлов с SD-карты по SPI
J1 — USB Mini-B (SMD)Питание/прошивка (через внешний USB-UART программатор, так как выделенного USB-UART чипа в BOM нет)
J2 — разъём аудио-джек 3.5ммВыход на вход "EAR" магнитофонного входа ретрокомпьютера
S1-S5 — 5× тактовые кнопкиУправление (навигация по списку файлов, play/stop, вверх/вниз — по аналогии с классическим TZXDuino)
P1 — 1×2 пин-хедерДоп. разъём (вероятно, управление двигателем ленты — Motor Control, как в оригинальной схеме, используется некоторыми моделями Amstrad CPC)
D1 — 1N4001Защитный диод (вероятно, от переполюсовки на входе питания)
D2 — LED 3ммИндикатор питания/статуса
R1 — 330 ОмТокоограничение для LED
C1, C2 — 22 пФОбвязка кварцевого резонатора X1
C3 — 10 мкФСглаживание питания
C4, C5 — 100 нФРазвязка по питанию
C6 — 10 нФФильтр (вероятно, в звуковом тракте перед выходным джеком)
Доп. разъёмы: 1× 6-контактный и 1× 4-контактный Dupont-гнездоВероятно, для подключения OLED-дисплея и SD-модуля отдельными шлейфами, либо для внешних периферийных подключений

. Типовая распиновка ATmega328P в проектах этого семейства​

Хотя точный .ino для этой конкретной "Compact"-версии не показан построчно в открытом доступе, устройства этого класса (включая близкие форки на голом ATmega328) стандартно используют следующую схему подключения:

  • D9 — аудиовыход (ШИМ через таймер, на разъём J2)
  • D10/D11/D12/D13 — SPI к SD-карте (CS/MOSI/MISO/SCK)
  • A4/A5 (SDA/SCL) — I2C к OLED-дисплею
  • A0-A3, D7 — пять кнопок управления (UP/DOWN/STOP/PLAY/ROOT), подтянуты к GND
  • D6 — управление двигателем ленты (Motor Control, опционально, для некоторых Amstrad CPC — соответствует разъёму P1 из BOM)

5. Формат проекта​

Файлы схемы (.sch, .lib, .net, .pro, .cmp) указывают на KiCad старого поколения (4.x/5.x), где схема и PCB-проект (.kicad_pcb) хранились раздельно от общего файла проекта — то есть плата разрабатывалась не в EasyEDA (как у предыдущих проектов от UR4QBP), а в классическом KiCad.


6. Итог​

TZXDuino-Compact — это компактная плата-редакция классического открытого проекта TZXDuino: вместо готового модуля Arduino Nano всё сведено на одну небольшую печатную плату с ATmega328P в DIP-корпусе напрямую, OLED-дисплеем 128×64 по I2C, SD-картой через модуль Catalex, пятью кнопками управления и аудиовыходом на 3.5мм джек. Это функциональный аналог коммерческого "TZXDuino-mini" — прошивка полностью совместима с оригинальным открытым кодом TZXDuino/Arduitape, а сама плата — просто более компактная и дешёвая аппаратная реализация той же идеи "цифрового магнитофона" для ZX Spectrum и совместимых машин.


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

Название файла / ПапкаОписаниеGitHubYandex.Диск
gerbers (папка)Производственные Gerber-файлы платыСсылка на GitHubСсылка на Яндекс.Диск
images (папка)Фотографии и иллюстрации платыСсылка на GitHubСсылка на Яндекс.Диск
ino (папка)Исходный код прошивки (Arduino-скетч)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.cmpФайл соответствия компонентов (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.kicad_pcbФайл печатной платы (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.libБиблиотека символов (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.netNetlist (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.proФайл проекта (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino Compact v1.01.schПринципиальная схема (KiCad)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino_Compact_v1.00_BOM.txtПеречень компонентов (BOM)Ссылка на GitHubСсылка на Яндекс.Диск
TZXDuino_Compact_v1.01.pdfЭкспортированный чертёж/схема в PDFСсылка на GitHubСсылка на Яндекс.Диск
Скачать все файлыВсе файлы находятся в одном архивеСсылка на GitHubСсылка на Яндекс.Диск

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

  • Оригинальный проект TZXDuino — информация доступна в сообществе
  • Репозиторий проекта — GitHub
Автор
Verter_bot
Просмотры
28
Первый выпуск
Последнее обновление

Оценки

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