Русский
Русский
English
Статистика
Реклама

Analog tv

8 оттенков серого, или ZX Spectrum48 за 3

17.10.2020 04:07:11 | Автор: admin

Прочитав статью Передача аналогового тв сигнала с помощью STM32 решил попробовать нарисовать телевизионный сигнал на дешевой китайской плате stm32f401ccu6 за $2.5 без дополнительного железа.

<cut text="Когда-то давным-давно" />

Когда-то давным -давно году так 1988 досталась мне собранная плата ZX spectrum 48 ,без корпуса и клавиатуры. Клавиатуру собрал на герконовых кнопках, а вот телевизор был только черно-белый. И тут прочитав вышеупомянутую статью, решил , а не собрать ли мне черно-белый спекки. Починил подобранный когда то на помойке ч/б телевизор с экраном ЭЛТ в 5 дюймов и почитав спецификации на PAL/NTSC, взял китайскую платку stm32f401ccu6 с 64КB RAM ,256 Flash 84MHz 32bit processor.

Генерация видео-сигнала:

Specci нужно 256 пикселей по горизонтали. Добавим по 8 на рамку. Добавим обратный ход луча и синхро импульс получим около 400 точек на линию 64 мсек. Если берем первый таймер (TIM1) с частотой 84MHz то получим 13 отсчетов ШИМ на точку, то есть от нуля до двенадцати. Возьмем уровень черного 3, уровень белого 10 , а уровень синхроимпульса 1. И запускаем Circular double buffer DMA с высоким приоритетом и отрисовкой в прерывании.Четные и нечетные линии дублируются , то есть у нас реально есть 50 герц обновления экрана (выбран PAL). Скорость эмуляции спектрума задается другим таймером (TIM4), выводящим звук.

Что не получилось:

Два синхронных канала ШИМ на видео, для большего числа уровней серого. Они разваливаются, даже если на одном таймере, при работе USB.

Реализация Спектрума 128. На платке есть место для флеша, так туда подходит и даже работает сериальный PSRAM (PSRAM64H 3.3V SOP8 64Mbit),но только в режиме 1Bit SPI из-за разводки на плате. Примерно вдвое медленней чем нужно для эмуляции.

Телевизор подключен напрямую, но это нарушение спецификации уровня сигнала (3.3 вместо 1 вольта). По хорошему нужен делитель и ФНЧ.

Видео получилось не очень, картинка реально лучше, но с тв сложно снимать:

Исходный код

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru