|
|
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Всем привет и с Новым Годом. Вопрос: есть запись в файле в виде timer1=ON/13:22/13:23/1/1/1/0/0/0/1 timer2=ON/13:03/13:04/1/1/1/1/1/1/1 timer3=ON/13:05/13:06/1/0/1/0/1/0/1 timer4=ON/13:07/13:08/1/0/0/0/1/0/0 timer5=ON/13:09/13:10/1/1/0/0/1/0/0 есть функция, которая проверяет системное время, сравнивает его с файлом и включает/отключает реле. Если поставить обработку одной строки, то все ОК. А если обрабатывать все пять строк, то получается что срабатывает только пятый таймер. Т.е. если время соответствует timer1, то реле включается. Далее проверяется вторая строка, и если время не соответствует, то реле выключается. Задача - необходимо реализовать булевую функцию, которая включает и выключает реле в зависимости от настроек. (Типа многозадачный таймер). Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Чтобы было понятнее: Первое включение 1:00 - 2:00, второе 3:00 - 4:00 Сейчас 1:30 Проверяется первая строка - время соответствует условие, реле включается Проверяется вторая строка - время не соответствует, реле выключается (а надо чтобы работало до 2:00) Если не трудно, подскажите, а то всю голову сломал уже ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2018, 12:00 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Всем спасибо, уже разобрался)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2018, 12:54 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Dmitry_A123, авторЕсли не трудно, подскажите, а то всю голову сломал уже ужас, выкинуть говнокод, нормально расписать условие, и больше так не писать никогда. иначе будешь и дальше голову ломать при любом изменении или дополнении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 12:33 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
makhaonDmitry_A123, авторЕсли не трудно, подскажите, а то всю голову сломал уже ужас, выкинуть говнокод, нормально расписать условие, и больше так не писать никогда. иначе будешь и дальше голову ломать при любом изменении или дополнении. Так ты помоги делом, а не словом - напиши свой не говнокод, на личном примере покажи, как можно и нужно делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 13:09 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
под ван, Тут же элементарное дело, делаем Copy строки до \n сбрасываем \n и бьём опять же до = и уже разбиваем на / Элементы добавляем в массив TDictionary<string, TDictionary<int, string>> Дальше делаем с этой инфой что угодно, перебирая через foreach к примеру ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 13:27 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Так я же не знаю условий :) ТЗ надо. Что тут делать? ON/13:22/13:23/1/1/1/0/0/0/1 когда что включать когда выключать? Там может быть OFF? Код смотреть не хочу, потому как новый год, лень думать и вообще слом мозга :) авторТ.е. если время соответствует timer1, то реле включается Какое реле включается? Какое выключается? 1 включаем, 0 отключаем? или еще как? Почему указано два времени? Что будет происходить с 13:22 до 13:23? Для начала можно SplitStr по '/' в массивы структур. Счаз трохи накидаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 14:11 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Не знаю, насколько названия полей соответствую ТЗ, набросал, не запускал, надо гонять: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 14:32 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Отвлекли, сорри ) Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 14:37 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Няшик, makhaon, вот вы какие крутые и отчаянные хакеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 14:50 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
чччД, Кхм. Спроси меня - как бы сделал Я для Себя. Я бы сделал так Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Потому что я могу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 17:17 |
|
||
|
Алгоритм работы таймера
|
|||
|---|---|---|---|
|
#18+
Ребята, хватит отсебятины, используйте кэшед текст буфферз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2018, 19:56 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39578765&tid=2041385]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
206ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 562ms |

| 0 / 0 |
