Views: 2427
Проект на PIC-микроконтроллере PIC16F648A. Количество каналов 36. Для индикации используется подключение по матрице 6х6. Расположение светодиодов в одну линию. Все эффекты написаны для возможности увеличения количества светодиодов. Рекомендуется увеличивать кратно 36. При использовании в схема транзисторных ключей типа IRF7104 и IRF7101 (или аналогичных) количество светодиодов было 540 шт. Больше просто не было необходимости.
Схема бегущих огней.
Питание осуществляется от источника постоянного тока 5 вольт. Мощность выбирается от количества светодиодов, для питания 36 светодиодов достаточно тока в 300 мА. Для подключения светодиодных линеек предназначены соединители con3/4. Резисторы R14-R25 это плата за использования только одного плеча в управлении светодиодами, при высокой скорости которая используются для индикации, существенно сказывается емкость перехода светодиодов, поэтому эти емкости необходимо чем то разряжать когда транзисторный ключ закрыт.
Резисторы в затворах полевых транзисторов (установленные последовательно) можно выкинуть, только нужно оставить резисторы R12-R13. Они необходимы для выполнения функций внутрисхемного программирования (если это необходимо). Для задания тактовой частоты используется керамический резонатор на 20 мГ. Хотя можно использовать кварцевый резонатор или любой с частотой поближе к 20 мГ.
Диод шоттки предназначен для защиты PIC-контроллера от случайной подачи напряжения обратной полярности. Больше никаких нюансов в схеме нет.
Схема одной матрицы из 36 светодиодов и подключение к контроллеру бегущих огне ch-bo-36.
Для создания периметра их бегущих огней необходимо изготовить необходимое количество таких матриц и все они подключаются параллельно. Сопротивление резистов выбирается в зависимости от установленных типов светодиодов. Необходимо учитывать, что светодиоды работают в импульсном режиме с периодом 1:6. Вы можете выбирать ток согласно паспорта для светодиода для импульсного режима с коэффициентом 0,7.
Программа построена таким образом, что яркость светодиода можно менять в диапазоне 127 шагов, это достаточно для создания элементарных световых эффектом. Все эффекты написаны в динамическом режиме когда один эффект сменяет другой на максимальной скорости.
Вид на собраную плату контроллера бегущих огней
резисторы на нижней стороне это R14-R25.
Перечень элементов необходимых для сборки.
Наименование | Типоразмер | Тип (замена) | Количество | Примечание |
Микроконтроллер | SOIC18 | PIC16F648A | 1 | |
Конденсатор электролитический | 1000,0х6,3в | 1 | ||
Конденсатор электролитический | 22,0х6,3в | 1 | ||
Конденсатор керамический | 0,1х50в | 3 | ||
Керамический резонатор | 20.0 мГц | 1 | можно заменить на кварцевый + два конденсатора на 15 пф |
|
Резистор | 0805 | 1,0к | 12 | |
Резистор | 0805 | 100,0к | 12 | |
Транзисторы | SOIC8 | IRF7341 | 3 | |
Транзисторы | SOIC8 | IRF7342 | 3 | |
Диод шоттки | SMA | 10MQ040N | 1 |
Программа написана на ассемблере. В основную программу входят 55 эффектов, в том числе 2-ва – звездное небо, выбор эффектов через RAND, режим бегущей тени.
Основные моменты:
Световые эффекты задаются последовательно и их количество и последовательность может быть изменена по своему желанию. Это можно сделать в этом месте:
org 0xD60 ;====================== выбор подпрограммы для огней vypro movfw chet_pro movwf temp_c bcf STATUS,C ; умножить значение регстра на 2 rlf temp_c,f ;====================== movlw HIGH adr_str1 ; PCLATH настройка регистра страницы для movwf PCLATH ; правильного выполнения команды "addwf PCL,F" ;====================== movfw temp_c ; загрузка адреса выбора программы adr_str1 addwf PCL,F ; pro1 call bo_left ; 0 return pro2 call bo_rait ; 1 return pro3 call bo_r_l ; 2 бегущий влево-вправо return pro4 call bo_nvc ; 3 бегущие навстречу return pro5 call bo_vys ; 4 return pro6 call bo_vys2 ; 5 return pro7 call bo_sal ; 6 return pro8 call bo_dvo ; 7 return pro9 call bo_nak ; 8 return pro10 call bo_nak2 ; 9 return pro11 call bo_nak3 ; 10 return pro12 call bo_nak4 ; 11 return pro13 call bo_kop ; 12 копьё return pro14 call bo_nak5 ; 13 выдвижение с низу return pro15 call bo_nak6 ; 14 выдвижение с верху return pro16 call bo_nak7 ; 15 два огня из центра с накоплением по краям, стирание с краев в центр return pro17 call bo_ng ; 16 плавно - все плавно загораются и ганут return pro18 call bo_ng1 ; 17 "бросок" return pro19 call stars ; 18 ветренное ночное небо return pro20 call stars2 ; 19 северное сияние return pro21 call chet_bit ; 20 случайные 4 огня return pro22 call chet_bit2 ; 21 бегущие 4 огня return pro23 call ccvety ;*22 цветы return pro24 call dogdi ;*23 капли дождя return pro25 call bo_left2 ;*24 return pro26 call bo_left3 ;*25 return pro27 call bo_nak8 ;*26 return pro28 call bo_nak9F ; 27 return pro29 call dogdi2F ;*28 return pro30 call taxiF ; 29 return pro31 call volnyF ; 30 return pro32 call volny1F ; 31 return ;====================== bsf INVRT ; 1 -32 goto pro1 bsf INVRT ; 2 -33 goto pro2 bsf INVRT ; 3 -34 goto pro3 bsf INVRT ; 4 -35 goto pro4 bsf INVRT ; 5 -36 goto pro5 bsf INVRT ; 6 -37 goto pro6 bsf INVRT ; 7 -37 goto pro7 bsf INVRT ; 8 -39 goto pro8 bsf INVRT ; 9 -40 goto pro9 bsf INVRT ; 10 -41 goto pro10 bsf INVRT ; 11 -42 goto pro11 bsf INVRT ; 12 -43 goto pro12 bsf INVRT ; 13 -44 goto pro13 bsf INVRT ; 14 -45 goto pro16 bsf INVRT ; 15 -46 goto pro19 bsf INVRT ; 16 -47 goto pro20 bsf INVRT ; 17 -48 goto pro21 bsf INVRT ; 18 -49 goto pro22 bsf INVRT ; 19 -50 goto pro23 bsf INVRT ; 20 -51 goto pro24 bsf INVRT ; 21 -52 goto pro25 bsf INVRT ; 22 -53 goto pro26 bsf INVRT ; 23 -54 goto pro27 bsf INVRT ; 24 -55 goto pro29 ;=====================================================================================================
Видео проекта
В видео предоставлены вырезки от общего цикла работы программы, сам цикл приблизительно 45 минут.
Для радиолюбителей Днепропетровска, платы контроллера и светодиодные планки есть в наличии, стоимость платы контроллера 20 грн, планка 10 грн.
Корпус для платы контроллера, с вырезами под соединители
[box title=”Файлы для загрузки” color=”#521BDE”]Схема контроллера бегущих огней в формате pdf [wpdm_file id=125]Схема подключения светодиодов в pdf [wpdm_file id=126]Прошивка v15 [wpdm_file id=127]Программа ассемблер Language tool versions: MPASMWIN.exe v5.49, mplink.exe v4.47, mplib.exe v4.47 [wpdm_file id=128][/box]
Это может быть интересно
- Регулятор влажности ch-3800Views: 1406 И еще один проект на плате ch-c3xxx – универсальный регулятор влажности ch-3800. Регулятор позволяет работать как в режиме индикатора влажности, так и в режиме регулятора. Рабочий диапазон …
- Проблемы классической светомузыкиViews: 2066 Светомузыка – что это такое? Определение: Светомузыка (жаргонное: цветомузыка) — вид искусства, основанный на способности человека ассоциировать звуковые ощущения со световыми восприятиями. Такое явление в неврологии получило название …
- ESP32-первое знакомствоViews: 6602 Музыкальная тема к статье, слушаем: Настало время познакомиться c ESP32 и для меня, для этого я приобрел в ГАММЕ отладочную плату с модулем ESP-WROOM-32 (ESP32-DevKitC). Первая задача, как …
- Проект с использованием MCC часть 12-2Views: 1055 Настало время для изучения шины I2C. Изучать будем на примере работы с индикатором RET012864E. Что изменили со старой схемы: В прошлой теме я затупил и не добавил подтягивающие резисторы …
- NeoPixel LED и PIC18Views: 1668 Еще раз об управлении светодиодами на драйвере WS2812 и ему подобных. Как известно эти светики управляются по однопроводной шине. Основная особенность, что программно можно описать передачу данных, …
- Analog-to-Digital Converter with Computation Technical BriefViews: 1276 Аналого-цифровой преобразователь с вычислительным модулем. ВВЕДЕНИЕ Аналого-цифровой преобразователь (ADC) с вычислительным модулем (ADC2) в 8-разрядном микроконтроллере Microchip имеет встроенные вычислительные функции, которые обеспечивают функции пост-обработки, такие как передискретизация, …
- Дифференциальный терморегуляторViews: 3993 Дифференциальный терморегулятор ch-3020 Назначение. Ch-c3020 представляет собой дифференциальный терморегулятор. Основное назначение солнечные системы горячего водоснабжения, а также вентиляционные системы управление притоком свежего воздуха. Контроллер позволяет работать пяти режимах. …
- CCP модуль для декодирования ИК-кодов пультов ДУViews: 1051 Множество изготовителей для своих пультов дистанционного управления на ИК лучах используют принцип широтно-импульсной модуляции. В таких кодах бит единицы представляется импульсом большой длительности, а ноль импульсом короткой длительности. …
- VU Meter Tower ARTViews: 1610 Стерео индикатор уровня аудио сигнала. Компактность и удобство проектирования устройств на светодиодах WS2812B, а также легкость реализации алгоритма родило идею созданию своей конструкции. В этом проекте я предоставлю …
- Проект с использованием MCC часть 08Views: 1053 И так создадим проект в котором при помощи двух кнопок мы сможем управлять яркостью светодиодов. При использовании МСС у нас лафа полная, добрые дяди с Microchipa подготовили функции, …