Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler: i8080/8085/KP580
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
adam1105
0 / 0 / 0
Регистрация: 01.12.2016
Сообщений: 71
1

[к580вм80] Включение матрицы светодиодов для получения эффекта увеличивающегося квадрата

10.12.2017, 21:03. Просмотров 693. Ответов 2
Метки нет (Все метки)

На погашенном поле из левого верхнего угла начинает распространяться «волна». Вначале загорается один светодиод в углу, затем загораются все смежные с ним (в том числе и по диагонали) и т.д. через каждую секунду до тех пор, пока не образуется квадрат из зажженных светодиодов 5×5. Затем в таком же порядке гаснут

Не могу понять ,как это сделать,сижу весь день ,понял только ,как сделать задержку в 1 секунду , и вроде как это нужно делать через циклический сдвиг (RAL) ,сначала на 1 ,потом на 2 и т.д. ,а дальше все...

Приложил фото , как диоды диоды должны загораться(слева на право)
0
Миниатюры
[к580вм80] Включение матрицы светодиодов для получения эффекта увеличивающегося квадрата  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2017, 21:03
Ответы с готовыми решениями:

Включение/выключение светодиодов
Задача в следующем: есть два светодиода и их нужно включать и выключать по...

Плавное включение светодиодов
Здравствуйте. Очень плохо знаком с электроникой и, пока что, не имею Arduino....

Последовательное включение светодиодов - сколько штук максимум?
Задача одновременно включать 100шт оптронов PC817. Очень желательно включить...

Параллельное включение мощных светодиодов. Грамотный способ?
Существует грамотный способ включить светодиоды параллельно? Ну, не совсем...

Расчет питания для матрицы светодиодов
Добрый день! Сразу скажу что в электронике я почти полный профан, поэтому и...

2
ФедосеевПавел
Модератор
4160 / 2270 / 919
Регистрация: 01.02.2015
Сообщений: 7,545
10.12.2017, 22:24 2
Думаю, что у вас должна быть следующая организация программы:
1. Два независимых процесса (динамическая индикация и заполнение "видеопамяти")
2. С частотой обновления не менее 50Гц на каждый светодиод (на строку) организуется динамическая индикация. Скорее всего, построчно по 8 светодиодов на строку. Данные для подсветки берутся из буфера - назовём его видеопамятью.
3. С периодичностью 1 секунда обновляется видеопамять.

Т.к. программа неразрывно связана со схемой, то нет смысла что-то даже начинать без неё.
Попробуйте выполнить самостоятельно по приведённым идеям, т.к. затруднительно написание программы без проверки и отладки на реальном оборудовании.
0
freewalker
0 / 0 / 0
Регистрация: 23.01.2017
Сообщений: 1
14.12.2017, 10:19 3
Первое – вопрос ТС–у – что за микросхемы слева вдоль матрицы?
Не могу прочитать на фото.
Справа вижу 155ЛА13 – четыре мощных логических элемента 2И–НЕ с мощным выходом и открытым коллектором – они за «минус» светодиодов отвечают.


Рискнул бы предложить альтернативный способ формирования требуемой волны:
На фото вижу учебный стенд УМК, на плате вижу порт 580вв55 – три порта ввода – вывода. Можем предположить, что один из трёх портов инициализируется на ввод информации с чёрных клавиш, а два других программируются на вывод информации на матрицу светодиодов.
Важно! Номер порта ВВ55 должен быть в методичке у ТС–а.

Волна строится в соответствии с прилагаемой иллюстрацией

В тактах 0 и 1 динамическая индикация не требуется, в тактах 2–5 применена динамическая индикация самого простецкого типа, без задержки занося друг за другом байты полутактов в порты

Алгоритм программы такой:
1. Инициализация / программирование ВВ55
2. Заносим два байта, относящиеся к нулевому такту, в два порта ВВ55
3. Ждём одну секунду
4. Заносим два байта, относящиеся к первому такту, в два порта ВВ55
5. Ждём одну секунду
6. Запускаем таймер ожидания одной секунды
7. Заносим два байта, относящиеся к первому полутакту такта 2, в два порта ВВ55
8. Заносим два байта, относящиеся ко второму полутакту такта 2, в два порта ВВ55
и так в цикле до завершения одной секунды
9. Запускаем таймер ожидания одной секунды
10. Заносим два байта, относящиеся к первому полутакту такта 3, в два порта ВВ55
11. Заносим два байта, относящиеся ко второму полутакту такта 3, в два порта ВВ55
и так в цикле до завершения одной секунды

И так до такта 5, потом в обратном порядке до такта 0, после чего возвращаемся на шаг 2 и так в бесконечном цикле
0
Миниатюры
[к580вм80] Включение матрицы светодиодов для получения эффекта увеличивающегося квадрата  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2017, 10:19

Включение и выключение 3-х светодиодов тремя кнопками независимо друг от друга
включение и выключение 3-х светодиодов тремя кнопками независимо друг от друга...

Составить процедуру для получения из квадратной матрицы A(n,n), n<=6 матрицы B(n,n-1) путем вычеркивания элементов главной диагонали исходной
Помогите пожалуйста составить процедуру для Паскаля: Составить процедуру для...

В центре каждого квадрата матрицы поместить сумму остальных элементов квадрата
Заполнить матрицу случайными числами. Разбить матрицу на квадраты размером 3х3....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru