|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 6:15 am
| Автор |
Съобщение |
|
radolin
Ранг: Форумен бог
Регистриран на: Пон Дек 19, 2005 12:21 pm Мнения: 1037
|
Може да разгледаш тук: http://spritesmods.com/?art=ledmatrix
Човека управлява дисплеи от автобусни спирки с няколко Atmega88. Резултатът е доста впечатляващ, има хубави клипчета на сайта.
|
| Пет Окт 02, 2009 9:20 am |
|
 |
|
optron
Ранг: Ориентиран
Регистриран на: Чет Ное 20, 2008 1:49 pm Мнения: 276 Местоположение: Бургас
|
Такаам - има два подхода - паралелен и последователен. Имам предвид последователността на опресняване на матриците. Колегата, който ти предложи да светкаш редове, всъщност е споменал форма на паралелния подход. Проблемът тук всъщност е големият брой пиксели - ако се опресняват колоните (което в случая ще е последователен подход), при нарастване на броя им ще намалява времето за светене на един пиксел и оттам самият дисплей ще е блед и мрачен.
Големите видео стени по моловете и подобни са реализирани на подобен принцип, с матрици, които са пълноцветни, разбира се, и се управляват паралелно. Централният контролер изсипва графичната информация, а локалният контролер се грижи за интерпретирането и и за опресняването на редове или колони. Това е комбиниран паралелно-последователен подход - в една матрица опресняването е динамично, но всички матрици се опресняват едновременно в реално време. Е, в твоя случай това ще е твърде сложно решение, защото все пак нямаш чак толкова много пиксели.
Ето идейка, която ми идва на мен:
Хардуерни регистри, с достатъчно крака за два реда. Защо два? Ще разбереш след мъничко.
Едната половина от тези регистри се връзва с пикселите от всеки нечетен ред, а другата половина - от всеки четен ред. За лекота по-нататък тези две половини ще ги нарека четен и нечетен регистър.
Последователността на опресняване е следната: Всички пиксели са угасени (това при включването на джаджата), при което зареждаш нечетния регистър с данните за първия ред. Светкаш първи ред. Докато той си свети, зареждаш данните за втория ред в четния регистър. Щом си готова (разбрах, че си мацка  ), гасиш първи и палиш втори ред. Сега зареждаш данните за трети ред в нечетния регистър. Гасиш втори и палиш трети. Зареждаш четвърти ред в четния регистър. И така нататък. Като опреш до осмия ред, тогава, при запален осми ред, зададен чрез четния регистър, зареждаш първи ред в нечетния регистър. После гасиш осми и палиш първи ред. И така зацикляш.
Две са основните предимства на този подход. Едното е, че редовете се задържат светнати възможно най-дълго, като при това не е необходимо голямо бързодействие на управляващия микроконтролер. Второто е, че честотата на опресняване не зависи от броя на колоните. Е, ако промениш броя на редовете, тогава нещата се променят, но в общия случай редовете са по-малко от колоните.
Колкото до реализацията на анимацията ... Аз преди правих цветни контролери, при които пак си имаме един вид анимация и намерих решение, което на мен поне ми изглежда добро. Нещата, които зависят от времена ги правя в прекъсване, което се предизвиква от таймер на процесора. Примерно самата процедура по зареждането на регистрите и превключването на редовете. По едно прекъсване се извиква за всяко превключване на ред, след което си излиза от подпрограмата за прекъсването. Отделно, софтуерен брояч, който се инкрементира при всяко извикване на прекъсването, който един вид ми брои опресняванията. Той ми трябва за основната програма, която се изпълвяна в промеждутъците между прекъсванията. Тя следи този брояч, като го интерпретира като софтуерен таймер, и щом се препълни, преминава към следващата стъпка от анимацията и си го сетва колкото и е нужно. В моя случай, прекъсването правеше ШИМ-управление на трите цвята на трицветен светодиод, и когато няма импулс в момента, основната ми програма си правеше ефектите, които и бях заложил.
Нещо такова. Оле, сега като го чета ми идва дългичко! Дано не съм те отегчил!
Въпроси? Питай!
_________________ Digitally yours: Optron
|
| Вто Окт 06, 2009 11:54 pm |
|
 |
|
Cino
Ранг: Новодошъл
Регистриран на: Чет Окт 02, 2008 10:24 pm Мнения: 105
|
Малко допълнения към поста на Optron,
Големите екрани по моловете , са със статична индикация , т.е всеки един светодиод се управлява от съответен изход на преместващ
регистър, tb62726,mbi5024-26. Там принципа на управление е различен от обсъжданата тук динамична индикация.
За четните и нечетните регистри.
вземам за пример hc 4094, във самата интегрална схема има два реда D-тригери,
когато пишеш в първия ред тригери, другите LATCH тригери, пазят предишната записана информация,
писането в регистъра не се отрязава на изходите , докато не се подаде сигнал STROBE.
естествено ако изходните буфери са отворени.
Повечето преместващи регистри за управление на диоди са на този принцип.
Tака че няма нужда от два вида преместващи регистри за четни и нечетни редове.
|
| Сря Окт 07, 2009 8:46 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
Все си мисля че хардуера тук не е чак толкова проблемен. Тука почнахте да говорите за четни, нечетни и т.н. чудесии. Сега, това е просто един дисплей, ако се притеснявате за скорост - ми регистрите носят на около 4 МНz вход - какво ви притеснява. С дргуги думи хардуера е елементарен. Проблема ще е какво да се пише в тези регистри, щото някой трябва да генерира "видео" информацията. Тоя китайския за който говоря имам усещането че компа му генерира "видеото" като картинки, щото за 15-тина надписа от по 30-тина букви се точи 5-6 минути по кома. Иначе за всеки блок от 8х8 диода има по един 74НС595 + един за 8-те реда общо за 8 блокчета. Направено е на две части 8х2 блокчета.
Контролера му обаче е с бая интегрални схеми - не съм ги гледал точно какви са, но са 7-8.
|
| Сря Окт 07, 2009 3:43 pm |
|
 |
|
Tisho
Ранг: Форумен бог
Регистриран на: Пон Ное 22, 2004 11:24 pm Мнения: 1923 Местоположение: Габрово
|
От сложно по-сложно та най сложно.
Те хората от една камара години правят драйвери за светодиоди като този...
Не се грижиш за тока през светодиода само записваш и светиш 
|
| Сря Окт 07, 2009 5:24 pm |
|
 |
|
head_up
Ранг: Форумен бог
Регистриран на: Нед Юни 01, 2008 9:54 pm Мнения: 1503 Местоположение: Пловдив
|
ей, хора, момичето попита за съвет как да подхване проектиране на някакво матричка, вие чертежи за совалка и изчисления за траектория до марс й дадохте  нещо по-леко й трябва, "да влезе в час" ... тя совалките сама ще почне да ги мисли след време! Все така става....  ама такъв си е редът!
|
| Сря Окт 07, 2009 6:47 pm |
|
 |
|
Instinct
Ранг: Минаващ
Регистриран на: Пон Сеп 28, 2009 1:46 pm Мнения: 10
|
Леле колко много информация. Благодаря ви, много сте мили. Ей сега си почивам и почвам да питам
Само малко извън темата да попитам, досега така и не разбрах на прост човешки език, какво е то LATCH регистър 
|
| Пет Окт 09, 2009 2:33 pm |
|
 |
|
Koleto
Ранг: Форумен бог
Регистриран на: Съб Фев 18, 2006 11:55 pm Мнения: 1301 Местоположение: София
|
Въх... Какъв въпрос зададе... Това не е много на добре... При изписване на Latch в гугъла ето какво изкочи най-отгоре...
http://en.wikipedia.org/wiki/Latch_(electronics)
Хъм... това в скобите е част от URL-a... Не знам защо форума го изхвърли... Как си с английския?
_________________ Някой ден и костенурките ще се научат да летят...
|
| Пет Окт 09, 2009 2:45 pm |
|
 |
|
Instinct
Ранг: Минаващ
Регистриран на: Пон Сеп 28, 2009 1:46 pm Мнения: 10
|
Верно не е много добре, но ми се струваше толкова извънземно, и не мога да си обясня защо не се сетих първо в гуглето да погледна
Иначеее оправям се с английския 
|
| Пет Окт 09, 2009 5:00 pm |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
А със френския ? 
|
| Пет Окт 09, 2009 6:08 pm |
|
 |
|
Koleto
Ранг: Форумен бог
Регистриран на: Съб Фев 18, 2006 11:55 pm Мнения: 1301 Местоположение: София
|
Ех ама сте.... Едно момиче да се намери тука и ще се опитате да го прогоните... Тцтцтцтц..... Какви хора бре
_________________ Някой ден и костенурките ще се научат да летят...
|
| Пет Окт 09, 2009 6:29 pm |
|
 |
|
head_up
Ранг: Форумен бог
Регистриран на: Нед Юни 01, 2008 9:54 pm Мнения: 1503 Местоположение: Пловдив
|
@Koleto, нема бе! ще си я гледаме, ще й обясняваме! и никой да не си развява емитера на воля
Сега по темата: тъй като явно трябват по основни познания из цифровата схемотрехника, а литературата на БГ ще е по-лесна за разбиране като за начало - погледни този сайт (евала им на тези хора!) http://www.kn34pc.com -> Книги -> Компютри (що ли точно тук, можеше да има отделен раздел Цифрова  ) . Нека това, че книгите изглеждат стари (такива са) не те притеснява - основата си е основа и там ще намериш прилични разяснения на основни въпроси като този за LATCH и други - не се вързвай да търсиш повечето от посочените интергрални схеми, те отдавна са получили съвременен заместител. По-скоро да стъпиш на нещо - ако не си усвоила логическите функции - и това е описано. Силно ти препоръчвам да прегледаш информативно "Цифрова техника", "Приложение на микропроцесорни системи в електронни устройства" и ако искаш да придобиеш представа как се вързва периферия към микроконтролер (на практика това което ти искаш да направиш, макар и в по-съвременен вариант) прегледай "Направете сами микрокомпютър" - класика  после ще помислиш каква архитектура да сковеш за твоята идея с матрицата, като я адапираш за съвременен микроконтролер  бил той и ПИК.
|
| Пет Окт 09, 2009 10:42 pm |
|
 |
|
Instinct
Ранг: Минаващ
Регистриран на: Пон Сеп 28, 2009 1:46 pm Мнения: 10
|
С него не  ама първо май ще отида на една екскурзия до Париж, че тогава с нови сили да ги захващам тия дисплейй, матрици и пикове
head_up, много материал ми даде за което благодаря отново. Даже май ще си взема и за из път да не губя форма 
|
| Съб Окт 10, 2009 2:09 pm |
|
 |
|
optron
Ранг: Ориентиран
Регистриран на: Чет Ное 20, 2008 1:49 pm Мнения: 276 Местоположение: Бургас
|
Идея си нямах за съществуването на хардуерни двуредови регистри ... Моля да бъда извинен!
Предполагам, че с такава интегрална схема ще е по-лесно, още повече, че това опростява и схемата...
_________________ Digitally yours: Optron
|
| Чет Окт 22, 2009 10:50 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 1 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|