Тетрис для АВР+светоматрица. На Ассемблере!

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение Z_h_e »

Z_h_e писал(а):...будет видеопроцессором.
СКАЗОЧНИК писал(а):...мне проще еще один МК поставить отдельно на панель и отдельно для самой программы...
Конечно проще и гибче.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
Morroc
Друг Кота
Сообщения: 19495
Зарегистрирован: Чт фев 20, 2014 18:57:55

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение Morroc »

При таком раскладе тоже так сделал бы - в итоге проще будет, один фиг не клепать же эти тетрисы на продажу :))
smacorp писал(а):Лучше положить горизонтально, приделать дно, и будет кассетница для хранения деталей.
У меня над столом висят две с полупрозрачными ящиками - была мысль за них управляемую гирлянду повесить, но не для тетриса, а чтобы по каталогу детали искать, типа нашел в базе - подсветился ящик :)) Вовремя одумался - не те масштабы, так найду.
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Реклама
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Morroc писал(а):гирлянду повесить, но не для тетриса, а чтобы по каталогу
Идея клевая. :)

А у меня продолжение теоретических изысканий.
Вот есть матрица. Есть регистры по три штуки на каждые 20 линий R, G, B. Однако, в таком случае остается по 4 свободных вывода на одном из регистров в каждой линии. Оставить так и гнать данные на каждые три регистра по отдельности?
Или все же сделать один длинный регистр и оставить их всего 7 штук (использую оставшиеся 4 вывода от каждого третьего регистра) и гнать данные в кучу все на все регистры?
Надеюсь, понятно выразился? :)))
Станислав
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение pyzhman »

Выбирать тот вариант, который требует меньше ресурсов, т.е. быстрее_действующий.
PS. Я уж было думал тут всё светиться и моргает.
Docendo discimus
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

pyzhman писал(а):уж было думал
Агась... Задолбался платы делать... говно получается. А их однако. много надо. :)))
Скоро профессионалом ЛУТ стану!

И какой же вариант быстрее??? :roll:
Станислав
Реклама
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение pyzhman »

Схему приложите.
Docendo discimus
Реклама
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

На хостинге картинок Радиокота почему-то отказались грузиться...
Вот одна схема:
Изображение
Вот вторая:
Изображение

По какой лучше? Быстрее?
Станислав
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18561
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение ARV »

с моей точки зрения нет смысла разделять регистры на раздельные порты - ничего, кроме усложнения программы это не даст, ведь придется делать 3 процедуры выдачи байтов, отличающихся только номерами портов. однако в этом варианте схемы есть, опять же с моей точки зрения, преимущество в "кратности" цветовых регистров. я имею ввиду, что цветовая составляющая всегда начинается с 0-го бита группы регистров, а не откуда-то из середины, как во второй схеме.

если для первой "клетки" красный цвет у вас начинается с 0-го бита, то как-то странно выглядит необходимость в сдвиге на N-бит синей составляющей и на M-бит зеленой. мне кажется, гораздо логичнее, что и красная, и синяя, и зеленая составляющая будут все занесены в 0-й бит, только в разные регистры. это заметно упростит процесс "рисования".
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Зеланая во второй схеме сдвинута так для экономии количества регистров в самой схеме... Т.е. если делать как во второй схеме, но с нуля все, то получится столько же регистров, как и в первой схеме, только управление всеми ими с одного вывода порта МК.
А по поводу синей, то это просто шина, я не соблюдал очередность подключения, просто указал, куда будет подключено, т.е. подразумевается, что будет последовательно все начина с нуля каждый разряд. :)

З.Ы. Короче, ставлю 9 регистров, но управляю ими, как во второй схеме, а вывод на клетки как в первой схеме.

И отправляю получается 3 Байта на каждый цвет, где последние 4 бита всегда не используются, а первые 20 бит определяют кому гореть, кому нет.
Станислав
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение pyzhman »

Вторая схема быстрее будет отрабатывать, т.к. нет пропускаемых бит в регистрах и не нужно перебирать порты. А данные пусть готовит "видеопроцессор"в своей видеообласти.
Docendo discimus
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Так данные-то слать как выше указал, по три Байта на каждый столбец для каждого цвета? Т.е. где 20 бит значащих, а оставшиеся 4 пустые?
Или все же слать по... Первые два Байта для одного цвета, потом 4 бита для этого же цвета, но вторые 4 бита для следующего?
Станислав
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение pyzhman »

Да, загонять 20*3= 60 значащих. Те 4, что остаются, не гнать, смысла нет.
Docendo discimus
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Значит все таки не 9 регистров а 8 штук достаточно будет. :)))

З.Ы. только что психанул окончательно... Хоть и получаются платки на ЛУТ технологии, но все равно дебильные "подтравы" тонера вывели из себя. На просвет даже залуженная плата имеет разрывы в дорожках. Дорожки шириной 0,7 мм, т.е. достаточно толстые.
Буду заказывать все платы разом на производстве. Хрен с ним заплачу 5000-6000 рублей...

З.З.Ы. Все. Заказ отправил в РЕЗОНИТ. 8)
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение Z_h_e »

Зря Вы заморачиваетесь с платами. По мне - это не первая задача. Напоминает как я с товарищем в детстве строил лодку. Первым делом сделали совок для вычерпывания воды. Получился отличным, но лодку так и не сделали - не нашли фанеру. Я к тому, что надо правильно расставлять приоритеты и не делать того, что может и не понадобится. Возьмите пока несколько светодиодов и все 200 необязательно, хватит наверное 4 (по углам стакана тетриса) и пробуйте делать видеопроцессор. Будете делать, появятся мысли об которых ранее и не думал. А когда сформируется концепция устройства, тогда и надо думать об остальном, но все равно подумывая об общем устройстве.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Так тем и занялся... )))) Делаю плату регистров и УЛН2003 для управления. Буду делать изначально видеочасть. А платы все равно отдал в заказ. Пусть делают.

Изображение

Вот и полезли первые камни.
Сижу изучаю информацию по всем возможным принципам работы видеокарт и как это реализовать на МК.
Здесь же надо передать с одного МК на другой данные, которые надо вывести на дисплей. Пусть дисплей у меня тупой, всего 200 точек. Однако, теперь считаю сколько байт займет целиком картинка, с какой частотой обновлять и т.д. И сколько ОЗУ взять МК.. :facepalm: То, чего говорили. :cry:
Ну пусть обновлять экран - это железная задача МК на видеокарте. А вот куда и сколько данных сохранять? Всю картинку? Или только изменения в картинке? ТУПЛЮ. :oops:

З.Ы. Посчитал примерно, если тупо зажечь один из цветов - это 1 бит в регистре, а если их три цвета, то 3 бита.
Получается 3 бита (цвет) х 200 клеток = 600 бит / 8 = 75 Байт на всю картинку.
А если добавить примерно 7 градаций яркости, то это еще по 3 бита на каждый цвет (7 "коэффициентов" ШИМ).
Получается 3 бита х 3 бита (яркость) х 200 клеток = 1800 бит / 8 = 225 Байт на всю картинку.
Не правильно посчитал.
Надо так: (3 бита цвета + (3 цвета х 3 градации)) х 200 клеток = 2400 бит / 8 = 300 Байт на всю картинку.

Если использовать примерно тот же принцип, как здесь на сайте кто-то делал видокарту на ПЛИС и использовал 2 ОЗУ, то надо 600 Байт ОЗУ, где один кадр загруженный и сразу выводится (обновляется), а второй кадр грузится. После они меняются местами.

З.З.Ы. При этом встал вопрос, как выводить? Строками? Столбцами? Отдельными пикселями? И как теперь частоту обновления посчитать?
Станислав
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение Z_h_e »

А нужна Вам эта градация яркости? В классическом тетрисе 7 фигур. RGB светодиод как раз даст 7 цветов. Программа проще будет. Ну а потом и можно добавить 65536 цветов :) если захочется, аппаратная часть от этого не изменится.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

как это не измениться???? Я же выбираю какой МК поставить.. .Вот поставлю ТИНИ2313, а он, всего 128 Байт ОЗУ... :facepalm:
А так есть еще МЕГА8, 16, 162 - все по 1 кБайту. Это те, что в ДИП корпусах, что мне очень нравится под платку, чтобы не нарушать общий вид, т.к. регистры тоже в ДИП.

Есть еще и МЕГИ побольше, но уже для поверхностного монтажа...

З.Ы. И все же расчеты эти для учебных целей, заодно узнать "общий" алгоритм работы видеокарты. :))) Потому и хочу знать, может кто как по-другому считает.

З.З.Ы. Заказал платы, все отлично, 210 штук вышли в 5500 с доставкой. Я доволен. 8)
Изображение
Станислав
Аватара пользователя
smacorp
Друг Кота
Сообщения: 3484
Зарегистрирован: Вт окт 22, 2013 04:37:23
Откуда: Казань

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение smacorp »

СКАЗОЧНИК писал(а):Заказал платы, все отлично, 210 штук вышли в 5500 с доставкой. Я доволен
Дык ладно, если они без ошибок или конструкция потом вдруг не изменится. Вообще же, мне кажется, поторопились Вы с заказом. Буду рад ошибиться.
Платы для HLDI - установки лазерной засветки фоторезиста.
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (5 цветов).
Заказ печатных плат - pcbsmac@gmail.com
Аватара пользователя
СКАЗОЧНИК
Идёт направо - песнь заводит, Налево - сказку говорит.
Сообщения: 5000
Зарегистрирован: Чт апр 21, 2011 17:55:50
Откуда: Иркутск

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение СКАЗОЧНИК »

Так платы-то под светодиоды... Выше выложил. Где же там ошибаться? И как же может измениться конструкция, если у меня уже есть 1000 SMD светодиодов для этих плат?

З.Ы. Вы мне лучше с конструкцией видеокарты помогите. А то я уже не знаю что лучше читать в этом направлении. Вчера уже на ПЛИС полез... А надо то всего лишь - это - - какой интерфейс связи карты с МК главным?
- как обновлять информацию на экране (частота)
- как выводить информацию (строки, столбцы, точки)?
- сколько памяти? И как ее использовать?

- изображение - это массив Байтов? Т.е. постоянно выгоняю обновленные массивы на экран? и пока не обновится очередной массив, то крутить на экране старый?
- с какой частотой будет обновляться массив? Хватит ли SPI частоты, чтобы с главного МК загонять в память видеокарте очередной массив?
- Вообще, все выводить из оперативки?

- Что если я буду использовать для мозга "видеокарты" АТМЕГУ8 с 1 кБайтом ОЗУ? Хватит мне для реализации в дальнейшем ШИМ (три бита для градаций цвета)?
И еще куча вопросов... :oops: :facepalm:
Станислав
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18561
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Тетрис для АВР+светоматрица. На Ассемблере!

Сообщение ARV »

ответить-то на некоторые ваши вопросы я могу, но вот только теоретически, т.к. возвращаться в ассемблер нет желания.

я делал дисплей 10х16 из двухцветных светодиодов, т.е. 160 независимых кристаллов было - делал чисто на портах atmega32 (просто она у меня была), без всяких регистров. регулировка яркости так же была сделана.

общее представление о том, что я делал, вы можете получить по видео

здесь просто рандомное заполнение пикселей экранной области и плавное гашение/зажигание продемонстрировано. другое видео можете посмотреть на моем канале.

как вы понимаете, 160 кристаллов эквивалентны 53 RGB-светодиодам, наверное, для тетриса вашего маловато... но можно совершенствовать :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Ответить

Вернуться в «AVR»