Выключатель/Диммер (2 кнопки)

Greywolf-27
Offline
Зарегистрирован: 16.12.2013
Вроде как должно быть не очень сложно, но я к сожалению пока не смогу осилить:(
 
Дано:
1.Кнопка вкл.
2.Кнопка выкл.
3.Arduino Nano
4.Красный светодиод
5.Зеленый светодиод
6.Выход на ключ(и) к которому подключена нагрузка (светодиодная лента)
 
Нужно получить: 
1.Короткое нажатие на вкл.- гасим красный светодиод, зажигаем зеленый и отправляем ШИМ на выход с сохраненным (в EEPROM) значением.
2.Удерживаем вкл. (>2сек.) - если свет был включен то увеличиваем значение (с какой-то разумной скоростью) заполнения ШИМ, при максимуме и продолжении удержания вкл. моргаем обоими светодиодами. Если свет был выключен, то сначала пункт 1, а затем все то же.
3.Короткое нажатие на выкл. - проверяем текущее значение ШИМ и записанное в EEPROM, если отличается переписываем на текущее, выводим на ШИМ 0, гасим зеленый светодиод и зажигаем красный.
4.Удерживаем выкл. (>2сек.) - если текущий ШИМ <> 0, то  уменьшаем значение заполнения, когда доходим до минимума (это будет не 0, а значение при котором от ленты еще есть какой-то свет, подберется думаю опытным путем) и продолжаем удерживать выкл. моргаем обоими светодиодами, если текущий ШИМ = 0 do nothing (хотя можно и пару-тройку раз моргнуть красным диодом)...
5.Короткое нажатие вкл. и сразу же выкл. (между нажатиями <2сек.) - зажигаем зеленый светодиод и моргаем красным, на выход ШИМ отправляем значение из EEPROM, через минуту (ну или 30сек. практика покажет) выключаем.
 
Есть человек который возьмется?:) Ну и цена вопроса?:)
 
Greywolf-27
Offline
Зарегистрирован: 16.12.2013

Ах да.... Мне нужен именно софт:) железная часть это моя проблема:)

maksim
Offline
Зарегистрирован: 12.02.2012

Вместо стандартного 490 Гц 8 битного ШИМа получите ШИМ 4кГц 12-бит, 8 кГц 11 бит или 16кГц 10 бит на выбор, все параметры, которые нужно подбирать эксперементально будут вынесены. Если интересно пишите:

 

madmax96
Offline
Зарегистрирован: 22.09.2011

Greywolf-27 пишет:

Ах да.... Мне нужен именно софт:) железная часть это моя проблема:)

Пишите на fmv.electronics(sobaka)gmail_com. 

maksim
Offline
Зарегистрирован: 12.02.2012

Позно, уже взялся.

madmax96
Offline
Зарегистрирован: 22.09.2011

ок

nmi
Offline
Зарегистрирован: 17.12.2012

Шим можно сделать любой, в данном случае хоть на прерываниях....

 

maksim
Offline
Зарегистрирован: 12.02.2012

nmi пишет:

Шим можно сделать любой, в данном случае хоть на прерываниях....

Сделайте мне, пожалуйста, на дуине шим 24-бит 500 кГц.

Greywolf-27
Offline
Зарегистрирован: 16.12.2013

Тему можно закрывать:))) Задача выполнена на 110%:) Огромное спасибо Максиму...