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

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

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

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

F.A.Q. по выбору фонарей различных типов;
F.A.Q. по выбору аккумуляторов;
F.A.Q. по выбору зарядных устройств.
Ответ  Создать новую тему
Просмотров в теме 23881   Ответов в теме 111   Подписчиков на тему 8   Добавили в закладки 1
Опции темы Поиск в этой теме
Старый 03.09.2013, 14:38   21
INFERION

 
Аватар для INFERION
 
Регистрация: 07.04.2013
Последняя активность: 13.06.2023 02:24
Адрес: Украина, Полтава
Сообщений: 5774
Сказал(а) спасибо: 340
Поблагодарили: 8154 раз(а) в 2385 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
На Тайни13 этот код зажигает диоды ступенчато, а на Меге плавно.
Ну а суммарная скорость выхода диодов на режим одинаковая, или у тиньки значительно дольше это всё происходит? Проверять CLKPR не обязательно, можно просто ноль туда записать. Но если делитель на 8 отключен незапрограммированым фьюзом CKDIV8, то в этом необходимости нет...

Да и проверить частоту то можно банально секундомером и светодиодом на лапе. Главное знать что реально делает код, и написать программу дёргающую лапу через известное число тактов...

[Исправлено: INFERION, 03.09.2013 в 14:46]
INFERION вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 14:42   22
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от ploop :
На DIM там подтяжка 200k внутри, и всё. Повторитель не нужен.
Попробовать не повредит. Был такой случай. Природу его я не выяснял. Единственное, там 2 микрухи MAX16820 на выход тиньки вешали.
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 14:45   23
ploop
Ветеран Фонарёвки
 
Аватар для ploop
 
Регистрация: 06.03.2013
Последняя активность: Сегодня 00:20
Адрес: Тамбов
Сообщений: 4785
Сказал(а) спасибо: 646
Поблагодарили: 1874 раз(а) в 1158 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Tamagotchi :
Природу его я не выяснял
Да без осцилла и не выяснишь. Что угодно может быть, вплоть до грязи на макете, которая после подпайки повторителя благополучно убиралась
ploop вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 14:46   24
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Mazafaka, ослик есть?
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:06   25
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от ploop :
Глянул даташит на PT4115. На DIM там подтяжка 200k внутри, и всё. Повторитель не нужен.
Ну как бэ да, мне тоже казалось, что дело все же в "мозгу" тайни.
Мега же по PWM выдает ровно такой же сигнал, думаю...
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:09   26
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от INFERION :
Ну а суммарная скорость выхода диодов на режим одинаковая, или у тиньки значительно дольше это всё происходит?
Фишка в том, что код, скомпилированный для Тайни выполнялся раза в два быстрее, чем на меге.
Код сейчас скину, раз такая тема - он не сильно оптимален, конечно, но все же.
Это управление дневным светом в машине - у меня одна лампа на ДРЛ и на поворотник. Чтобы не тянуть провод, который "говорит", что поворотник включен, будет стоять тайни, которая гасит ДРЛ при включении поворотника, а зажигает его через 2 сек после пропадания сигнала с поворотника же.
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:15   27
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Код программы. Пробелы убрались...жесть..
Суть в том, что я хочу зажигать лампу красиво - постепенно. Это основной наворот.
Тупо зажечь моментально не проблема.
Сейчас понятно, что это надо делать в отдельном цикле.
Я писал после вина, так что в этой редакции fadIn идет глупо, проходя полностью опять цикл.
Но вопрос в том, что на Меге все работает идеально, а на тайни нет.

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

const byte turnLightPin = 4,
dimmerPin = 3,
DRLpin = 0;
byte fadeFactor = 255,
overallBrightness = 100;
unsigned long startTime = 0;
boolean fadeIn = false; // Флаг того, что надо начинать "зажигание"

#define MIN_LEVEL overallBrightness = 20
#define MAX_LEVEL overallBrightness = 100

void setup(){
pinMode(DRLpin, OUTPUT);
}

void loop(){
const int waitTime = 1000; // Pause before turning DRL ON
unsigned int senseValue = 0;
unsigned long timePeriod = 0;

senseValue = digitalRead(turnLightPin);

if(senseValue == HIGH)
{
fadeIn = false;
analogWrite(DRLpin, 0);
}
else
{
if(fadeIn == false)
{
startTime = millis();
fadeIn = true;
fadeFactor = 0;
}
else
{
timePeriod = millis() - startTime;

if(timePeriod > waitTime)
{
if(digitalRead(dimmerPin) == HIGH) {MIN_LEVEL;}
else {MAX_LEVEL;}
{
if(fadeFactor<(255*overallBrightness)/100)
{
fadeFactor = ((timePeriod-waitTime)*overallBrightness)/400;
analogWrite(DRLpin, fadeFactor);
}
else
{
analogWrite(DRLpin, 255*overallBrightness/100);
}
}
}
}
}
}

[Исправлено: KNNK07, 03.09.2013 в 15:18]
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:20   28
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Tamagotchi :
Mazafaka, ослик есть?
Осциллятор? Неа, нет.
Хочу купить у китайцев. "Переносной" с дисплеем 4.3 дюйма нормал? Все хочу купить - уже есть потребность.
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:22   29
ceramic
Ветеран Фонарёвки
 
Аватар для ceramic
 
Регистрация: 08.10.2011
Последняя активность: 30.03.2024 21:54
Адрес: 哈尔滨
Сообщений: 8022
Сказал(а) спасибо: 934
Поблагодарили: 5193 раз(а) в 2784 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
У меня просто Arduino IDE, а там для ATtiny13 фьюзы устанавливаются в текстовом файле и все.
Че это?
У меня тоже Arduino IDE. И фьюзы выставляю и шью в оболочке SinaProg (http://robocraft.ru/blog/10...).
ceramic вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:32   30
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

A ATMEL studio 6 не шьет,к стати? Только компилирует?
Я его поставил, но чот у меня перегруз по кол-ву кнопок от нее случился
Хотя раньше я программы писал и в Borland Builder и ничо
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:34   31
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
"Переносной" с дисплеем 4.3 дюйма нормал?
https://forum.fonarevka.ru/... Он?
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 15:52   32
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Да, такой
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 17:17   33
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Я тут подумал

Фишка в том, что ступенчатое изменение яркости актуально, НО на этом-то PWM не кончается.

То есть в процессе изменения яркости с 20% до 100% наблюдаем явную "лестницу", а как только яркость достигла нужного уроавня, дальше светит ок, то есть мерцания нет.
Это говорит о том, что сам по себе PWM работает хорошо.
Но вот алгоритм его изменения работает херовато - такое впечатление, что от 20% (значение 51) до 100% (значение 255) яркость изменяется не +1, как это в коде подразумевается, а +20 где-то или типа того.
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 17:20   34
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Mazafaka,
Да, нет смысла делать каскад на транзисторе. Я вспомнил, в том случае когда это помогло проблемы были и на постоянной яркости.
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 17:22   35
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
fadeFactor = ((timePeriod-waitTime)*overallBrightness)/400;
А Вы уверены, что результат формулы влезает в byte? В меге 16-bit таймер ипользуете?
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:37   36
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Предлагаю на "ты".
Уверен. Я ж математик как ни как

Там условие в IF: fadeFactor<(255*overallBrightness)/100.
overallBrightness/100 это целевой уровень яркости в % - она либо 0.2 либо 1.
По сути - приглушенный свет, либо полный.

waitTime это константа - 1 000.
В итоге текущий уровень в пунктах это (timePeriod-waitTime)/4.
Когда это конкретное значение достигнет 255, то "розжиг" прекратится.
А значение достигнет 255, когда разница во времени будет 255*4 = 1020 миллисек.
То есть получаем в итоге, что лампа зажигается 1.020сек.

У меня вот только тут мысля - если это время будет "простреливать".
Т.е. в рез-те вычислений будет получаться 256, то оно что будет класть реально в порт? Единицу?
Если так, то есть подозрение, что ступенчатое изменение, видное мне, это как раз переполнение, которое заканчивается на физическом попадании в 255. Потому и моргает.
Но с другой стороны, моргать тогда должно произвольно (и сильнее и слабее), но у меня ступенчатое повышение.
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:40   37
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Tamagotchi :
В меге 16-bit таймер ипользуете?
Я без понятия, т.к. не знаю, как их "использовать".
Я тот же код заливаю в Мегу.
Таймеры все прописываются во фьюзах? Видимо, в hardware.txt? Для IDE.
В Мегу я ни бутлоадер ни фьюзы не прописывал - все пришло из китая в прописанном состоянии, тут ХЗ. Но попробую посмотреть.
KNNK07 вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:40   38
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
256, то оно что будет класть реально в порт? Единицу?
А не 0?
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:42   39
Tamagotchi

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

Отправить сообщение для Tamagotchi с помощью Skype™
По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Mazafaka :
Таймеры все прописываются во фьюзах?
Нет!
В меге есть и 16 и 8 бит таймеры, а в тиньке только 8. Я не стал разбираться в вычислениях и по этому предположил, но если Вы уверены. что там от 0 до 255 - проблема не в этом.
Tamagotchi вне форума   Ответить с цитированием Вверх
Старый 03.09.2013, 18:44   40
KNNK07
Увлеченный
 
Регистрация: 18.08.2013
Последняя активность: 29.11.2015 13:52
Сообщений: 442
Сказал(а) спасибо: 11
Поблагодарили: 23 раз(а) в 23 сообщениях

По умолчанию Re: Немного о программаторах AVR

Цитата:
Посмотреть сообщение Сообщение от Tamagotchi :
А не 0?
А ХЗ, но мне кажется, что тупо обрежет биты и все. Тогда все, что больше 255 это 255.
KNNK07 вне форума   Ответить с цитированием Вверх
Ответ  Создать новую тему
Опции темы Поиск в этой теме
Поиск в этой теме:

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





Copyright ©2007 - 2024, FONAREVKA.RU

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

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

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