Периодические действия контроллера. или я изобретаю велосипед?

karbo4s
Offline
Зарегистрирован: 29.08.2013

Всем привет!

Понадобилось написать следующую программу:

Включение и выключение реле в определенные часы. Настройки хранить в ini файле, что бы можно было менять не прошивая контроллер.

Вот получился такой велосипед, подскажите, кто как делает, а то может я хрень какую написал...)))

 

Сохраняемм в ini файле следующие строки

sw01|100-130|450-520|540-600   - для включенния и выключения реле, время в минутах

sw02|110-170|480-520|560-800   - для включенния и выключения реле, время в минутах

При старте контроллера, считваем данне с ini файла и разбираем их по массивам(разберу первую строчку)
mas_vkl[1,100,450,540] - массив включения(первая цифра, номер реле, остальные - время включения)
mas_vikl[1,130,520,600] - массив вывключения(первая цифра, номер реле, остальные - время выключения)
 
пробегаем по массивам каждую минуту и сравниваем время время. Первый массив - время включения, второй массив время выключения. Ну и если время совпадает, то включаем или выключаем.
Марцинов
Offline
Зарегистрирован: 17.11.2013

karbo4s пишет:
пробегаем по массивам каждую минуту и сравниваем время время. Первый массив - время включения, второй массив время выключения. Ну и если время совпадает, то включаем или выключаем.

это могут  быть настройки поданные на внешнем носителе  (например с SD или  др.) или основная программа должна будет принимать настройки по любому вашему протоколу и сохранять их в EEPROM

karbo4s
Offline
Зарегистрирован: 29.08.2013

настройки в файле на SD

Марцинов
Offline
Зарегистрирован: 17.11.2013

в чем проблемы?

karbo4s
Offline
Зарегистрирован: 29.08.2013

проблем нет. спрашиваю, может кто другой алгоритм использует..., вдруг у меня не оптимально

Марцинов
Offline
Зарегистрирован: 17.11.2013

karbo4s пишет:
проблем нет. спрашиваю, может кто другой алгоритм использует..., вдруг у меня не оптимально
тогда пишите вместо программы исследование по методам оптимизации

karbo4s
Offline
Зарегистрирован: 29.08.2013

что писать сам решу

GreenDer
Offline
Зарегистрирован: 06.09.2013

karbo4s пишет:

что писать сам решу

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

karbo4s
Offline
Зарегистрирован: 29.08.2013

GreenDer пишет:

karbo4s пишет:

что писать сам решу

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

 

к тому, что читайте первый пост, что я спрашивал, и хрень мне писать всякую не надо

com
Offline
Зарегистрирован: 06.09.2013

karbo4s пишет:

проблем нет. спрашиваю, может кто другой алгоритм использует..., вдруг у меня не оптимально

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

такой ответ устроит?

зы.

нет в жизни счастья, а лучше - враг хорошего!

:)

karbo4s
Offline
Зарегистрирован: 29.08.2013

com пишет:

karbo4s пишет:

проблем нет. спрашиваю, может кто другой алгоритм использует..., вдруг у меня не оптимально

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

такой ответ устроит?

зы.

нет в жизни счастья, а лучше - враг хорошего!

:)

 

еще один специалист, вам не дают что ли?

вот что писал:

Вот получился такой велосипед, подскажите, кто как делает, а то может я хрень какую написал...)))

Сяу Ляу Вей
Offline
Зарегистрирован: 25.10.2013

karbo4s пишет:
Вот получился такой велосипед, подскажите, кто как делает, а то может я хрень какую написал...)))

Давно бы уже написал, чем из пустого в порожнее переливать.

Какая разница - оптимально или не оптимально для такой простой задачи? Точность включения минуты - в чем ловите оптимум ?  В размере кода +- 100 байт или в микросекундах?