Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Электроника - это просто Теоретические и практические вопросы для начинающих электронщиков.

 
Опции темы
Непрочитано 10.02.2012, 21:40  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Динамическая индикация - загоны.. Нужно понять отчего..

Упростим ситуацию до минимума, расскажу итоги эксперимента.
Дано:
1) устройство динамической индикации. 16 строк 48 столбцов. Проверено подключением к выводам светодиодов, работает четко.
2) Стенд, светодиодный. Соответственно матрица 16 на 48. Итого 768 элементов. Светодиодов 256 потому что RGB - один плюс (анод) и три минуса (катод). Итого 16 на 16 элементов RGB.
3) Обозначения. Аноды обозначаем А1 - А16. Катоды С1 - С48. Для тестов используем одну ячейку. А2-С1.
4) Включаем контроллер и даем ему команду зажечь А2-С1. Загорается второй элемент и - в этом и проблема - вполнакала зажигается первый элемент, на пересечении А1-С1.
5) Отключаем контроллер, даем на А2-С1 просто 12 вольт. Горит, как и положено, только второй элемент - засветки первого нет.
6) Включаем контроллер без стенда, даем команду зажечь А2-С1. Подключаем светодиод на А2-С1 - горит, как и положено. Подключаем светодиод на А1-С1 (ячейка, которая внезапно горит на стенде в полнакала) - ничего не горит, как должно быть.

Соединяем контроллер со стендом, даем А2-С1 - горит вторая как указали командой и вполнакала первая...

Ну и что это блин такое?? Внезапно..
Реклама:
whoim вне форума  
Непрочитано 10.02.2012, 21:49  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Подробнее об устройстве..
Атмега328, 8 сдвиговых регистров 74HC595. Первый два регистра управляют ключами из двух плечей - логический DTC144 NPN, который в свою очередь открывает P-мосфет FR9120. Это аноды, А1-А16. Оставшиеся шесть регистров управляют через 33ома резистор N-мосфетами FR430A. Это катоды.

Алгоритм вывода.
Переменная j - номер текущей строки, от 1 до 16. Вызов по таймеру, частота около 100 гц (итоговая).
В переменную регистров заносим биты так, чтобы включилась строка (анод) j.
Забиваем в переменные для регистров, какие катоды надо включить на этой строке (проверка по массиву data[j][x], где x от 1 до 48, тип булевый).
Отсылаем это в регистры, дергаем защелку - включаем все мосфеты как надо.
Увеличиваем j
Если j больше 16, сбрасываем в 1.
Конец

Таким образом у нас получилась динамическая индикация, где цикл бегает по анодам, одновременно включая нужные для данного анода катоды.
whoim вне форума  
Непрочитано 10.02.2012, 22:03  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Если при динамике подсвечиваются сегменты соседних разрядов , значит при переключении разрядов вы не гасите сегменты . Все это "на пальцах" объяснялось в FAQ по протеусу .
Еще здесь можно посмотреть - http://www.kaligraf.narod.ru/nedodellki.html
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 10.02.2012 в 22:07.
dosikus вне форума  
Непрочитано 10.02.2012, 22:06  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

dosikus, предыдущие гасятся .. как бы объяснить. Смотрите.
Я завожу переменную (массив) byte registers[8] = {B00000000, B00000000, ...B00000000, }

Я меняю только те биты которые мне нужны.
я отсылаю переменные в регистры.

Соответственно одновременно с зажиганием новых гасятся предыдущие. Данные и по строкам и по столбцам отсылаются одновременно. Только потом защелкой активируются.

Есть необходимость все таки именно тушить все перед зажиганием, типа с задержкой? Спасибо за ответ! Пока пойду по вашей ссылке
whoim вне форума  
Непрочитано 10.02.2012, 22:09  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Что матрица , что сегменты - одинаково . Главное понять принцип.
Сложного там нет ничего .
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 10.02.2012, 22:10  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Прочитал, интересно. Но забыл рассказать еще об одной части эксперимента. Весь этот эффект похоже зависит от длинны проводов до светодиодов. Стенд длиный - и длинна может достигать 10 метров. Если подключить одиночный светодиод в ячейку засветки - он не горит. Как только подтыкаем разъем на стенд - он загорается..
Буду пробовать тушить и ставить задержку.
whoim вне форума  
Непрочитано 10.02.2012, 22:11  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

И еще.. подсвечиваются НЕ все сегменты, только те которые висят на первой строке. Возможно - остальные ключи успевают закрываться, а этот нет. Сейчас я вспоминаю, что был коротыш и этот ключ сильно грелся, но после теста был оставлен..
whoim вне форума  
Непрочитано 10.02.2012, 22:15  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Если есть подозрения на ключи , проверьте в статике . Поочередно переключая и контролируя свечения . Про инерцию ключей, на такой низкой частоте, это бред.
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 10.02.2012, 22:41  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Сообщение от dosikus Посмотреть сообщение
Если есть подозрения на ключи , проверьте в статике . Поочередно переключая и контролируя свечения . Про инерцию ключей, на такой низкой частоте, это бред.
Проверял, отключая от регистра - работают.. Проводочком +5в на него - заводится. Убираю - тухнет.. На глаз - моментально..
первый ключ из за коротыша реально был разогрет - термоклей потек с него. Термоклей надеюсь же то не проводит? )

Других мыслей кроме как инерции - нет. Частота реально низкая - мерцание боковым зрением заметно, да и уменьшал в сотню раз - видно очередность работы строк. Эффект подсвечивания некоторых (пока выявил что все на строке 1) есть. То есть если зажечь на любом столбце светодиод, загорится первый в этом же столбце..
whoim вне форума  
Непрочитано 10.02.2012, 22:44  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Динамическая индикация - загоны.. Нужно понять отчего..

Приведу кусок кода, может поможет. Среда - ардуино.

Код:
//функция, вызываемая по таймеру
void print() {
    //отрисовка матрицы
  //цикл по строкам (аноды)
    byte registers[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; //обнуляем регистры
    //задаем нужный анод
    if(j ‹ 8) bitSet(registers[0], j);
    else bitSet(registers[1], j-8);
    for (int k=0; k ‹ _COLUMNS; k++)
    //цикл по столбцам (катоды)
        if (data[j][k]) {
          //задаем катоды  
          if (k ‹ 8) bitSet(registers[2], k);
          else if (k›=8 &&  k‹16) bitSet(registers[3], k-8);
          else if (k›=16 && k‹24) bitSet(registers[4], k-16);
          else if (k›=24 && k‹32) bitSet(registers[5], k-24);
          else if (k›=32 && k‹40) bitSet(registers[6], k-32);
          else if (k›=40 && k‹48) bitSet(registers[7], k-40);
        }
        //shiftOut
        bitClear(PORTB,_latchPORTB);
        shiftOut2(_data,_clock,registers[7]);
        shiftOut2(_data,_clock,registers[6]);
        shiftOut2(_data,_clock,registers[5]);
        shiftOut2(_data,_clock,registers[4]);
        shiftOut2(_data,_clock,registers[3]);
        shiftOut2(_data,_clock,registers[2]);
        shiftOut2(_data,_clock,registers[0]);
        shiftOut2(_data,_clock,registers[1]);
        bitSet(PORTB,_latchPORTB);
        //корректировка j
        j++;
        if (j == _ROWS){
           j= 0; 
        }
}
whoim вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическая индикация EKuzmich TTL и CMOS логика 16 05.08.2011 08:18
Динамическая индикация mironov Микроконтроллеры, АЦП, память и т.д 4 02.07.2010 17:37
Динамическая индикация ПОМОГИТЕ 7Fantomas7 Микроконтроллеры, АЦП, память и т.д 2 27.03.2008 23:53
Динамическая индикация dosikus Микроконтроллеры, АЦП, память и т.д 3 16.02.2008 19:09
Динамическая индикация на ЖК dion310 Микроконтроллеры, АЦП, память и т.д 4 27.11.2007 10:39


Часовой пояс GMT +4, время: 10:28.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot