Долго ждал изготовление платы звука и внешних USB-портов. Сегодня платы приехали. Исполнение, как всегда, отличное.
Завтра буду паять.
https://i.postimg.cc/v8h3b5wr/image.jpg
Долго ждал изготовление платы звука и внешних USB-портов. Сегодня платы приехали. Исполнение, как всегда, отличное.
Завтра буду паять.
https://i.postimg.cc/v8h3b5wr/image.jpg
Спаял плату звука. Нарезал резьбу под стойки. Прикрутил плату на место.
Сделал разъемы для динамиков. Установил динамики.
Получилось компактно и аккуратно.
https://i.postimg.cc/mrSjvy2F/2.jpg
https://i.postimg.cc/YS78DskH/3.jpg
https://i.postimg.cc/y8cvPzMj/4.jpg
https://i.postimg.cc/J49pZh2t/5.jpg
Подключил ОЛЕД-экранчик к Готеку.
Чтобы не тянуть длинный провод в обход Готека, решил сделать вырез для вывода шлейфа сбоку корпуса Готека.
В боковом акриловом держателе вырез тоже предусмотрен.
Сверлом и надфилем сделал аккуратное прямоугольное отверстие в боковой стенке Готека.
Спаял четырех жильный шлейф необходимой длины.
В результате получил красивое соединение с минимальной длиной шлейфа. И проводов лишних не болтается по корпусу.
https://i.postimg.cc/Nf0jN4CV/1.jpg
https://i.postimg.cc/mkm2Lzk8/2.jpg
https://i.postimg.cc/sfm298m7/3.jpg
https://i.postimg.cc/90mQHtmD/4.jpg
Сейчас думаю, как можно использовать трехсегментный индикатор Готека. Пока он как заглушка установлен. Может частоту процессора выводить? Или режим Турбо?
Работы идут медленно:
https://i.postimg.cc/zDPqvWkH/13.jpg
https://i.postimg.cc/BvhVp5bx/11.jpg
https://i.postimg.cc/YS2PQDrr/12.jpg
Сделал шлейфы, установил все стойки для плат. Проверил работоспособность аналоговых видеовыходов.
Добрый день!
Понравился проект, у себя на ZX-EVO, задействовал подобный индикатор для отображения частоты процессора в реальном времени, использовав частотомер с али, индикаторы заменил на зелёные (брал в ЧиД), частоту выводил непосредственно с ножки процессора с помощью экранированного МГТФ, при длине провода 15-20см работает без сбоев.
Хорошая идея.
Мне предложили использовать ардуино нано и к ней подключить неиспользованный в готеке трехсегментный индикатор.
Индикатор управляется по протоколу I2C.
Из плюсов:
- ардуино нано у меня уже есть. Не надо ничего покупать.
- получу опыт программирования ардуино.
Правда, не могу решить, что лучше выводить на экран.
Девайс на первой фото я уже где-то видел. Очень стильно. И клавиатура в цвет.
Установил адаптер IDE-SD. Он расположен третьим этажом. Для крепления использовал пластиковые стойки. Сделал IDE-кабель, подключил его к SMUK. Протестировал работу.
Осталось спаять низкопрофильный адаптер USB-клавиатуры (ZXKM она же Космокарта). Набор уже в наличии.
Из мелочей хочу добавить набор из трех кнопок в районе VGA-разъема. В новой версии RGB-VGA адаптера от АлексЕкб появилось возможность настраивать адаптер через экранное меню.
https://i.postimg.cc/C14cQttY/20.jpg
https://i.postimg.cc/vByPXM03/21.jpg
https://i.postimg.cc/QCxfGmG7/22.jpg
На странице 8 я описывал сборку и подключение контроллера клавиатуры+мышь ZXKM+SD.
Плата ZXKM+SD слишком высокая, поэтому для проекта собрал более простую версию этого контроллера ZXKM 2.0
По высоте он всего 54 мм и не имеет возможности работы с SD-картой.
https://i.postimg.cc/JzKFCBWR/2-1.jpg
Сборка не очень сложная, но без лупы не обойтись - уж очень мелкий шаг выводов у микросхем. Плату вполне можно спаять без фена, только одним паяльником.
https://i.postimg.cc/pLPSSJ40/2-2.jpg
После отмывки флюса, надо проверить КЗ по питанию и можно вставлять космокарту в слот шины Скорпиона.
После включения, Скорпион не запускается. Паниковать не надо - так и должно быть.
В первую очередь надо прошить Альтеру Epm7160. Для этого используем программу Quartus II 13.1 и программатор Altera USB ByteBlaster. У меня такой БайтБластер:
https://i.postimg.cc/5NdTBV3W/2-4.jpg
Мой ноутбук не очень охотно определял этот девайс. Пришлось подбирать кабель и USB-слот на ноутбуке.
https://i.postimg.cc/xTv7g4xJ/2-3.jpg
Открываем программу Quartus, включаем Скорпион, загружаем прошивку для Альтеры (Add File), ставим галки Program и Verify. Для начала прошивки жмем Start. В процессе загрузки Скорпион должен ожить и показать стартовое меню.
https://i.postimg.cc/Pq30Yv6S/2-5.jpg
Далее надо прошить Атмегу 328. Я делаю это с помощью популярного программатора T48 в режиме ISP.
Чтобы каждый раз не мучиться с проводками, я сделал специальный кабель. Разводку контактов можно глянуть на странице 8 или в документации ZXKM на гитхабе https://github.com/Igor-azx987sa/ZXKM
https://i.postimg.cc/3NpqsS3q/2-6.jpg
https://i.postimg.cc/0Qh3HR1m/2-7.jpg
Кабель подключаем к разъему AVR-ISP ZXKM.
https://i.postimg.cc/SQzHYscG/2-8.jpg
Загружаем прошивку Атмега328 в программатор, выставляем фьюзы как на фото. В документации фьюзы тоже описаны.
Включаем питание на Скорпионе и программируем контроллер.
https://i.postimg.cc/mDPJwZJB/2-9.jpg
https://i.postimg.cc/wBTS1Qkt/2-10.jpg
После удачной прошивки ZXKM начинает работать сразу. Можно только настроить удобную раскладку клавиш с помощью утилиты, которая тоже есть на гитхабе.
Протестировал беспроводную и обычную USB-клавиатуру. Все работает отлично.
Сборка Скорпиона подходит к завершению.
Пришел черед установить "видеокарту". В моем случае - это RGB-VGA/HDMI адаптер от AlexEkb. За время сборки проекта сменилась прошивка адаптера и появилась возможность использовать экранное меню для его настройки .
Т.к. у меня в наличии два монитора с разным разрешением решил установить три кнопки для управления меню. Это позволит быстро менять разрешение, которое выдает адаптер.
Плату кнопок я купил на Алиэкспрессе.
https://i.ibb.co/NtCTVxd/vga-15.jpg
Установил плату над VGA-разъемом. Для этого использовал пластиковые стойки. Для кнопок высверлил три отверстия. Кнопки на плате пришлось заменить на более "высокие" - 12 мм.
https://i.ibb.co/wwnkDYZ/vga-10.jpg
Далее надо было сделать небольшой кабель для подключения платы кнопок к RGB-VGA/HDMI адаптеру. Хочу показать как я делаю такие кабели без использования специальных инструментов - кремперов.
Разъем Dopunt 2.54 мм.
Тонким паяльником лужу внутреннюю часть контакта:
https://i.ibb.co/vBHcCbB/vga-1.jpg
Залуживаю концы силиконовых проводов примерно на 1.5-2 мм:
https://i.ibb.co/gRrqX32/vga-2.jpg
Далее припаиваю провода к контактам, используя минимальное количество припоя:
https://i.ibb.co/qr8tKhG/vga-3.jpg
Обжимаю разъемы, используя тонкие плоскогубцы:
https://i.ibb.co/MVG3Vh8/vga-4.jpg
Собираю разъем. Готово.
https://i.ibb.co/7pmWXJb/vga-51.jpg
Аналогично делаю вторую часть разъема. Тут используются разъемы типа PH 2,0 x H 2,54 мм.
Лужу контакты:
https://i.ibb.co/dgQ02Hc/vga-6.jpg
Припаиваю провода:
https://i.ibb.co/7jxWC7j/vga-7.jpg
Обжимаю контакты:
https://i.ibb.co/QvmnBN4/vga-8.jpg
Собираю разъем:
https://i.ibb.co/1K0hTPQ/vga-9.jpg
Устанавливаю разъем на место:
https://i.ibb.co/z5ZgsRX/vga-11.jpg
https://i.ibb.co/nwyY7qJ/vga-12.jpg
Вот все в сборе. Получилось красиво и аккуратно:
https://i.ibb.co/cJc9LbM/vga-13.jpg
Тестирую. Нажимаю кнопку ВНИЗ (-) (крайняя левая). Появляется экранное меню адаптера.
https://i.ibb.co/GJwt1xy/vga-14.jpg
Все работает. Теперь можно в любой момент менять настройки адаптера без его перепрошивки или подключения к Терминалу.
Сегодня реализовал идею по использованию трехсегментного индикатора эмулятора дисковода Gotek, который никак не используется после подключения 2.42" OLED-экрана.
Решил использовать этот индикатор для отображения режима Turbo. Для начала нашел спецификацию на этот индикатор. Это оказалось не трудно.
https://github.com/coopzone-dc/GotekLEDC68
https://i.postimg.cc/sXHWJYz7/LEDC68-pin.png
Индикатор управляется по протоколу I2C. Поэтому, для простоты реализации взял дешевую плату Arduino NANO. Тем более, уже есть готовые библиотеки для работы Ардуино с индикатором.
Итак, подключаем индикатор к выходам SCL и SDA. На плате это контакты А5 (19) и А4 (18) соответственно.
https://i.postimg.cc/tCx6hnMn/turbo-swich-3.jpg
Установил в Arduino IDE библиотеку GotekLEDC68. Это два файла TM1651.h, TM1651.cpp
Запустил тестовый скетч DemoCounter - индикатор заработал.
Мне надо организовать вывод двух надписей - nor и tur. Таких символов в драйвере индикатора нет. Поэтому, решил поступить просто. Изменить рисунок цифр в драйвере.
Таким образом 123 - это будет nor, а 456 - это будет tur
Рисунок символов лежит в секции static int8_t NumTab[] = файла TM1651.cpp (перед изменением сохраняем оригинальный файл!)
Это коды рисунка цифр и сиволов от 0 до 9 и от A до F. Плюс еще какие-то символы.Код:static int8_t NumTab[] =
{ 0x3f, 0x54, 0x5c, 0x50, 0x78, 0x1c, 0x50, 0x07, 0x7f, 0x6f,
0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71,
0x00, 0x63, 0x5c, 0x01, 0x40, 0x08
}; //numbers 0-9, A-F, special chars
Нам надо поменять коды для цифр от 1 до 6
Для этого удобно использовать готовые онлайн инстументы. Например, такой https://vip-cxema.org/index.php/onli...ed-kalkulyator
Мышкой рисуем нужный символ и получаем HEX-код, который надо прописать на нужное место в секции static int8_t NumTab[] =.
https://i.postimg.cc/Kz8LL96m/editor-symb.jpg
Изменил, проверил на тестовом скетче. Символы поменялись и выводятся корректно.
Теперь, надо написать обработчик события. В нашем случае надо мониторить сигнал Turbo и, в зависимости от его уровня, выводить на индикатор надпись nor или tur.
На плате есть выход для светодиода "Turbo". Вот к этому разъему удобно подключать плату Ардуино и отслеживать его уровень.
https://i.postimg.cc/43JhkLNp/turbo-swich-2.jpg
Сигнал Turbo со Спектрума подключил к входу D2.
Хочу сразу сказать, что я в Ардуино полный ноль. Пришлось посмотреть уроки.
После этого написал простой скетч.
Проверил на реальном Скорпионе - переключение работает корректно.Код:/***********************************************************/
//Turbo-Mode indicator for Gotek 3 digit LED
//Hardware: Re-Used Gotek 3 digit LED
//Board: Arduino NANO
//Autor: Froggy
//Date: 14.12.2024
/***************************************************************/
#include "TM1651.h"
#define CLK 19 //pins definitions for TM1651 and can be changed to other ports
#define DIO 18
TM1651 Display(CLK,DIO);
void setup()
{
pinMode(2, INPUT_PULLUP); //pin definition for INPUT signal (turbo-mode)
Display.displaySet(2);//BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;
}
void loop()
{
boolean turbo = digitalRead(2); // Read turbo status Scorpion 256
if (turbo == 0)
{
uint16_t num = 123; // Normal-mode
Display.displayInteger(num);
delay(100);
}
else
{
if (turbo == 1)
{
uint16_t num = 456; // Turbo-mode
Display.displayInteger(num);
delay(100);
}
}
}
https://i.postimg.cc/SxbMVQBT/turbo-swich-4.jpg
https://i.postimg.cc/J0ykYs7g/turbo-swich-5.jpg
https://i.postimg.cc/Pq4YCGF6/turbo-swich-6.jpg
Возможно, надписи nor и tur не самые информативные, но что-то лучшее придумать не смог. Были разные варианты, в т.ч. и по написанию букв.
https://i.postimg.cc/nr6QynCL/turbo-swich-7.jpg
Еще можно подумать об загрузочном приветствии, которое будет отображаться на индикаторе только один раз при подаче на Спектрум питания. Но пока интересных идей у меня нет.