Проблемы построения алгоритма работы таймера. Нужна помощь

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
VladimirBogdan
Рядовой
Сообщения: 8
Зарегистрирован: 01 фев 2017, 15:10

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение VladimirBogdan »

Добрый день, использую FLprog в своих проектах, очень удобная программа. 
Практики маловато, вследствие чего столкнулся с проблемой. 
Помогите советом, заранее спасибо за ответы.

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

Вывожу время на панель Nextion, управление кнопочное.

Начальные переменные в полях минут и секунд соответственно( 0:0 ), кнопками задаётся количество минут и секунд, которые нужно отсчитать.

При составлении алгоритма использую блоки генератора, сравнения и счётчики. 
Для сброса счётчика использую блок сравнения с переменной типа Integer = 0.
Сбрасывать счётчик необходимо по достижению нулевого значения, чтобы заново отсчитывать минуты (имитация хода времени на таймере).
Главная проблема в том что манипуляции с блоком сравнения и 
переменной Integer = 0 приводит к тому, что начальные переменные "ломают" весь построенный алгоритм.

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

Спасибо.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13 окт 2015, 16:47
Контактная информация:

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение Олег »

Для начала гляньте здесь картинку к пятому комментарию.
VladimirBogdan
Рядовой
Сообщения: 8
Зарегистрирован: 01 фев 2017, 15:10

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение VladimirBogdan »

Глянул, добавил промежуточные переменные. Не решило проблему.  

Ключевая проблема заключается в том, что что манипуляции с блоком сравнения и 
переменной Integer = 0 приводит к тому, что начальные переменные "ломают" весь построенный алгоритм.

Грубо говоря, нажатие кнопки сброса счётчика в 0, приводит к активизации блока сравнения и записи в табло "секунд" переменной с другим значением. Что в свою очередь ломает всю работу таймера.

Как лучше реализовать таймер?

Спасибо.
Аватара пользователя
kiyota
Рядовой
Сообщения: 97
Зарегистрирован: 18 фев 2016, 20:07
Откуда: РОСТОВСКАЯ ОБЛ
Имя: Олег

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение kiyota »

VladimirBogdan  Дайте файл с вашим проектом попробую повозиться.
Последний раз редактировалось kiyota 02 фев 2017, 16:42, всего редактировалось 1 раз.
kiyota
VladimirBogdan
Рядовой
Сообщения: 8
Зарегистрирован: 01 фев 2017, 15:10

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение VladimirBogdan »

В приложении проект, на первой плате я реализовал отображение времени от модуля DS1307 на панель Nextion.
На второй плате реализован секундомер.
Следующая отвечает за переключение между режимами (Часы/Таймер/Секундомер)
На 4 плате я хочу сделать алгоритм работы таймера, в этом и проблема(((

Спасибо за помощь!!!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
kiyota
Рядовой
Сообщения: 97
Зарегистрирован: 18 фев 2016, 20:07
Откуда: РОСТОВСКАЯ ОБЛ
Имя: Олег

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение kiyota »

Простите,а часы реального времени , просто отображение текущего времени и в таймере они не участвуют ?
По подробнее о таймере (что от него требуется,диапазон,прямой или обратный отсчет ) и если можно файл от Nextion проекта .
kiyota
VladimirBogdan
Рядовой
Сообщения: 8
Зарегистрирован: 01 фев 2017, 15:10

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение VladimirBogdan »

Часы реального времени в таймере не участвуют, просто отображают текущее время на первой странице панели.

Необходимо задавать на таймере Минуты, Секунды, потом нажать  кнопку (Пуск/Стоп),после чего таймер должен отсчитать заданное кол-во минут и секунд, после чего прозвенит пьезодинамик. + есть кнопка сброса.

В приложении файл для панели Nextion.

Добавлено (02.02.2017, 20:39)
---------------------------------------------
Файл
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось VladimirBogdan 02 фев 2017, 20:40, всего редактировалось 1 раз.
Аватара пользователя
kiyota
Рядовой
Сообщения: 97
Зарегистрирован: 18 фев 2016, 20:07
Откуда: РОСТОВСКАЯ ОБЛ
Имя: Олег

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение kiyota »

Уважаемый VladimirBogdan . Изучив ваш таймер , обнаружил следующее:
1)Входа с подтягивающим резистором, подразумевает их замыкание на GND , поэтому 
   их нужно инвертировать .
2)У вас минимальная единица времени 1 секунда , почему бы не взять её у RTC и убрать целых 
   два генератора.
3)Управление секундомером может быть сделать из панели?иначе таймер и секундомер включаются 
  одновременно от кнопки 2.
Ну в общем высылаю вам не много переделанный ваш проект. Будут вопросы спрашивайте всегда откликнусь .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
kiyota
VladimirBogdan
Рядовой
Сообщения: 8
Зарегистрирован: 01 фев 2017, 15:10

Проблемы построения алгоритма работы таймера. Нужна помощь

Сообщение VladimirBogdan »

Большое спасибо за помощь))) Всё very wonderful !!!
Ответить

Вернуться в «Спросить у знатоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя