Бегущие огни (ch-bo-36)

Views: 2417


Проект на PIC-микроконтроллере PIC16F648A. Количество каналов 36. Для индикации используется подключение по матрице 6х6. Расположение светодиодов в одну линию. Все эффекты написаны для возможности увеличения количества светодиодов. Рекомендуется увеличивать кратно 36. При использовании в схема транзисторных ключей типа IRF7104 и IRF7101 (или аналогичных) количество светодиодов было 540 шт. Больше просто не было необходимости.


Схема бегущих огней.

ch-catcatcat-bo-01

Питание осуществляется от источника постоянного тока 5 вольт. Мощность выбирается от количества светодиодов, для питания 36 светодиодов достаточно тока в 300 мА. Для подключения светодиодных линеек предназначены соединители con3/4. Резисторы R14-R25 это плата за использования только одного плеча в управлении светодиодами, при высокой скорости которая используются для индикации, существенно сказывается емкость перехода светодиодов, поэтому эти емкости необходимо чем то разряжать когда транзисторный ключ закрыт.

Резисторы в затворах полевых транзисторов (установленные последовательно) можно выкинуть, только нужно оставить резисторы R12-R13. Они необходимы для выполнения функций внутрисхемного программирования (если это необходимо). Для задания тактовой частоты используется керамический резонатор на 20 мГ. Хотя можно использовать кварцевый резонатор или любой с частотой поближе к 20 мГ.

Диод шоттки предназначен для защиты PIC-контроллера от случайной подачи напряжения обратной полярности. Больше никаких нюансов в схеме нет.


Схема одной матрицы из 36 светодиодов и подключение к контроллеру бегущих огне ch-bo-36.

ch-catcatcat-bo-02

Для создания периметра их бегущих огней необходимо изготовить необходимое количество таких матриц и все они подключаются параллельно. Сопротивление резистов выбирается в зависимости от установленных типов светодиодов. Необходимо учитывать, что светодиоды работают в импульсном режиме с периодом 1:6. Вы можете выбирать ток согласно паспорта для светодиода для импульсного режима с коэффициентом 0,7.

Программа построена таким образом, что яркость светодиода можно менять в диапазоне 127 шагов, это достаточно для создания элементарных световых эффектом. Все эффекты написаны в динамическом режиме когда один эффект сменяет другой на максимальной скорости.


Вид на собраную плату контроллера бегущих огней

ch-catcatcat-bo-03

ch-catcatcat-bo-04

резисторы на нижней стороне это 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 грн.

Корпус для платы контроллера, с вырезами под соединители

ch-catcatcat-bo-07


[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]



Это может быть интересно


  • Простой цифровой регулятор мощностиПростой цифровой регулятор мощности
    Views: 6416 Простой регулятор мощности с цифровой индикацией. Этот проект создан как обучающий, для ознакомления с основами построения сетевых регуляторов мощности. Устройства подобного типа можно использовать для управления освещением, скоростью …
  • DIXELL XWEB500D-EVO + RUT900 или как пробить NAT-серверDIXELL XWEB500D-EVO + RUT900 или как пробить NAT-сервер
    Views: 993 Когда необходимо под какой нибудь контроллер имеющий вэб сервер в инет, то нужен статический IP, что оказалось проблемой при работе с операторами сотовых сетей, конкретно с оператором сети …
  • APA102 – светодиоды со встроенным драйвером и SPI интерфейсомAPA102 – светодиоды со встроенным драйвером и SPI интерфейсом
    Views: 3254 APA102 В 2014 году фирма Shenzhen Led Color Optoelectronic Co., Ltd http://www.szledcolor.com/ начала производство светодиодов на драйвере APA102. Это серия так называемых светодиодов со встроенным драйвером. Основной особенностью этих …
  • BMP280 – температура и атмосферное давление – учебный проектBMP280 – температура и атмосферное давление – учебный проект
    Views: 2037 Учебный проект на PIC32 и светодиодной панели P5 (2121)-168-6432-80 (32*64). Проект позволяет ознакомиться с простой графикой и с чтением давления и температуры с датчика BMP280. Для тестирования необходимо …
  • MPLAB® Harmony – или как это просто! Часть 1.MPLAB® Harmony – или как это просто! Часть 1.
    Views: 3554 Часть первая – Установка Гармонии. Музыкальная тема к статье, слушаем: В начале запуска нового проекта и выбора микроконтроллера стоит задача правильно его сконфигурировать, прежде чем перейти к реализации …
  • WiFi ESP8266 – AT команды связанные с функцией Wi-FiWiFi ESP8266 – AT команды связанные с функцией Wi-Fi
    Views: 5231 AT команды связанные с функцией Wi-Fi Функции Wi-Fi подключения, запускаться из командной строки Команда Описание  1 AT+CWMODE Проверка, настройка режима работы Wi-Fi (sta/AP/sta+AP), (не рекомендуется для новых проектов). 2 …
  • Регулятор влажности ch-3800Регулятор влажности ch-3800
    Views: 1405   И еще один проект на плате ch-c3xxx –  универсальный регулятор влажности ch-3800. Регулятор позволяет работать как в режиме индикатора влажности, так и в режиме регулятора. Рабочий диапазон …
  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Views: 2757 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • Проект с использованием MCC часть 11Проект с использованием MCC часть 11
    Views: 825 Можно несколько облагородить программу вынести наши процедуры обработки нажатия кнопок в отдельные функции. Но вы должны понимать, что это хоть и не значительно, но будет тормозить общую скорость …
  • Altium Designer first projectAltium Designer first project
    Views: 234 Эта статья подразумевает, что у вас установлен и настроен Altium Designer как описано в статье  Altium Designer my setup system and project structure.  Обратите внимание! Библиотека постоянно обновляется, …



Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее