Светодиодные фонари и световые приборы. Всё о светотехнике.
Вернуться   Форум FONAREVKA.RU Лаборатория Разработка и модификация фонарей Разработка и модификация электроники фонарей
Расширенный поиск
Забыли пароль? Регистрация

  • О нашем проекте
  • Светотехника и световые приборы
  • Правила форума
Проект FONAREVKA.RU специализируется на предоставлении всей необходимой информации по светотехнике:

— светодиодные фонари;
— различные источники питания;
— разнообразные зарядные устройства;
— освещение помещений и наружное освещение;
— световые приборы для личного, пассажирского и грузового транспорта;
— специальные световые приборы для медицины, для растений, для аквариумов, для террариумов, а также аварийно-сигнальные световые приборы;
— альтернативные источники света;
— лазеры и лазерная техника.

Если у вас есть вопросы по выбору фонарей, аккумуляторов и зарядных устройств ознакомьтесь с FAQ от наших экспертов:

F.A.Q. по выбору фонарей различных типов;
F.A.Q. по выбору аккумуляторов;
F.A.Q. по выбору зарядных устройств.
Ответ  Создать новую тему
Просмотров в теме 3425   Ответов в теме 6   Подписчиков на тему 3   Добавили в закладки 0
Опции темы Поиск в этой теме
Старый 03.09.2013, 07:09 Автор темы   1
Новичок
 
Регистрация: 01.09.2013
Последняя активность: 07.04.2014 14:27
Адрес: Екатеринбург
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили: 2 раз(а) в 1 сообщении

По умолчанию Программная переделка 8x7135, регулировка тока количеством стабилизаторов

Привет, фонарёвка.

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

Итак, суть: при включении фонарь плавно загорается, постепенно включая всё больше стабилизаторов(1,2,3,4,5,6,7,. Переход между стабилизаторами плавный за счет ШИМ. Когда яркость вас устраивает, тыкаем кнопку. Следующее включение фонаря будет на этой яркости(ШИМ выключится, то есть останется целое количество стабилизаторов в работе, округление вниз). Потом опять заново будет режим выбора яркости.

При этом: на токе до 700 ма ШИМ не будет выключен, чтобы можно было оставить очень низкий уровень света.

Как это сделано:
Блок стабилизаторов разрезан на блоки по 4+2+1+1(ШИМ). Каждый блок управляется отдельной ножкой контроллера. Один блок управляется ШИМ. Так я могу включать произвольное число стабилизаторов.

Как подключать блоки:
Тут три разреза, обозначены черно-красной полосой, и три перемычки, обозначены синим.
По ножкам:
К ШИМ-1блоку цепляем PB0.
К 1блоку цепляем PB4.
К 2блоку цепляем PB3.
К 4блоку уже подцеплена PB1.
(Картинка во вложениях)


Проблемы: Я никогда не писал на чистом C и код получился явно неоптимальным. Поэтому мне пришлось выкинуть из фонаря всё, кроме светилки. То есть никакой индикации батарейки, контроля температурой. Это всё попросту не помещается в память. Плюс активно используется eeprom-память.

Писалось-собиралось всё в avr студии5, для прошивки использовалась arduino nano.

Планирую в будущем улучшить прошивку, но не сейчас.
В архиве проект для студии. Пароль к архиву fonarevka_sh.
Миниатюры
Нажмите на изображение для увеличения
Название: 24f1f574a028c17d8859541bb3e7a526.png
Просмотров: 1056
Размер:	505.4 Кб
ID:	84265
Вложения
Тип файла: hex 7135x8v1.hex (2.7 Кб, 424 просмотров)
Тип файла: zip 7135x8v1.v1.5.zip (94.1 Кб, 151 просмотров)
Sht3ch вне форума   Ответить с цитированием Вверх
Поблагодарили: 2 раз(а)
galex (03.09.2013), Leon (03.09.2013)
Старый 03.09.2013, 08:37   2
galex
сволочь фонарёвки
 
Регистрация: 27.05.2011
Последняя активность: Сегодня 07:37
Адрес: Россия, Пермский край
Сообщений: 38198
Сказал(а) спасибо: 5886
Поблагодарили: 32495 раз(а) в 15080 сообщениях

По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

Цитата:
Посмотреть сообщение Сообщение от Sht3ch :
Возможно, это уже где-то было
угу. было. смотрю исходники - что-то знакомое больно. дефайны, значения, и, особенно комментарии.
потом в шапку заглянул:
"Author: Tamagotchi http://tamagotchi-007.livejournal.com/"



Цитата:
Посмотреть сообщение Сообщение от Sht3ch :
с самого начала хотел сделать прошивку сам.
вообще-то хорошим тоном считается указывать на чьей базе сделана прошивка.


Цитата:
Посмотреть сообщение Сообщение от Sht3ch :
при включении фонарь плавно загорается, постепенно включая всё больше стабилизаторов
Цитата:
Посмотреть сообщение Сообщение от Sht3ch :
Когда яркость вас устраивает, тыкаем кнопку. Следующее включение фонаря будет на этой яркости
вообще, довольно специфичное использование.
может такое где и нужно, но для большинства применений удобнее обратный алгоритмм - включение на выбранной яркости, а по короткому клику (хотя бы) - рампинг с запоминанием.
galex вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 17:59 Автор темы   3
Sht3ch
Новичок
 
Регистрация: 01.09.2013
Последняя активность: 07.04.2014 14:27
Адрес: Екатеринбург
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили: 2 раз(а) в 1 сообщении

По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

galex, Черт. Действительно забыл упомянуть, что использовал код тамагочи как опорный. Настолько боялся забыть это сделать, что забыл.


Цитата:
Посмотреть сообщение Сообщение от galex :
вообще, довольно специфичное использование.
Да, пожалуй. Просто я очень не люблю, когда после темноты в помещении вдруг появляется источник в 10ватт. Плюс, бывает необходимость включить ночью в машине фонарь. А водители не любят яркий свет в салоне.

Вообще, это был чистый эксперимент. Я в первый раз имел дело со всем этим, поэтому особо не думал. Хотелось за выходные получить результат.
Думаю убрать плавность, сделать ступенчатый рампинг стабилизаторами, попытаться докрутить внешнюю кнопку для переключения(а лучше - геркона). Но пока не читал теории - я пишу слишком неоптимальный код. Это всё не поместится.
Sht3ch вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:06   4
Tamagotchi

 
Аватар для Tamagotchi
 
Регистрация: 07.09.2011
Последняя активность: 04.08.2023 18:59
Адрес: Волгоградская обл.
Сообщений: 13705
Сказал(а) спасибо: 3333
Поблагодарили: 7886 раз(а) в 3523 сообщениях

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

Это на основе старой версии. Там код не оптимален. Самая заоптимизированная версия у меня 2.0 потом я расслабился Причем в версии 2.0 можно вообще EEPROM не использовать.
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:19   5
Tamagotchi

 
Аватар для Tamagotchi
 
Регистрация: 07.09.2011
Последняя активность: 04.08.2023 18:59
Адрес: Волгоградская обл.
Сообщений: 13705
Сказал(а) спасибо: 3333
Поблагодарили: 7886 раз(а) в 3523 сообщениях

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

И ошибки все мои остались.
ADCSRA &=~ (0<<ADIE | (0<<ADSC)); вот это не правильно
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 20:40 Автор темы   6
Sht3ch
Новичок
 
Регистрация: 01.09.2013
Последняя активность: 07.04.2014 14:27
Адрес: Екатеринбург
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили: 2 раз(а) в 1 сообщении

По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

Tamagotchi, каюсь, хотелось, чтобы засветилось как можно быстрее, в вопрос не углублялся.
Для меня это вообще было ужасом. Маленький пример: я пару часов искал баг - фонарь не сохранял состояние; оказалось, я забыл return в функции возврата запомненного режима. Уже сильно привычный мне C# такого бы никогда не позволил...
Sht3ch вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 21:04   7
Tamagotchi

 
Аватар для Tamagotchi
 
Регистрация: 07.09.2011
Последняя активность: 04.08.2023 18:59
Адрес: Волгоградская обл.
Сообщений: 13705
Сказал(а) спасибо: 3333
Поблагодарили: 7886 раз(а) в 3523 сообщениях

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Программная переделка 8x7135, регулировка тока количеством стабилизаторов

Sht3ch,
Контроль кода тут никакой. Я однажды забыл поместить объявление функции в ххх.h подключил это include xxx.h вызвал функцию, которую забыл не объявить, и ЭТО СКОМПИЛИЛОСЬ!!! Не работало (куда он вообще вызов сделал?) и я этот баг пару часов искал. А потом ВДРУГ перестало компилиться Меня такие чудеса бесят просто, особенно если до этого C# использовать.
Tamagotchi вне форума   Ответить с цитированием Вверх
Ответ  Создать новую тему
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск





Copyright ©2007 - 2024, FONAREVKA.RU

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

Правила форума | Отказ от ответственности

Время генерации страницы 0.09811 секунды с 19 запросами