Меню для семисегментного индикатора

Использование дисплеев и обсуждение пользовательских блоков к ним
rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#1

Сообщение rf80 » 15.02.2016{, 11:09}

Добрый день.
Делаю контролер управления газовым котлом.
Программу работы с датчиком сделал используя блок +- устанавливаю температуру задания.
Но стоит задача такая.
1 При удерживании клавиши попадаю в меню установки температуры (скажем высветил Т на две сек на индикаторе)
2 Клавишами + - выставляю температуру(эта переменная реализована)
3 Нажимаю запомнить разрешаю запись в ЕЕпром и переход на индикацию температуры с датчика.
Т.Е. организовать работу тремя кнопками.
Я думаю счетчик и мультиплесором завязаться как то.
Но чего то пока не скумекаю алгоритм

Добавлено (15.02.2016, 11:09)
---------------------------------------------
Еще один вопрос будет три сегмента переменная Float сегмент работает только с целыми есть необходимость вывести десятые. Т.е. как то нужно выделить точку.

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#2

Сообщение Олег » 15.02.2016{, 11:25}

Если +- реализован, то все остальное можно сделать так:
3100458.png
Первым таймером выставляется время задержания, второй для того чтобы сбросить триггер если кнопки не нажимались какое-то время, на его вход через ИЛИ завести все кнопки.
А насчет точки не понял.
Последний раз редактировалось Олег 15.02.2016{, 13:53}, всего редактировалось 1 раз.

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#3

Сообщение rf80 » 15.02.2016{, 11:43}

Гистерезис компаратора выставлен 0,5гр и соответственно установка идет кратно 0,5
Логично и температуру показывать с десятыми.
Семисегментный индикатор работает или со строкой или с Интеджер с Флоат не работает.
Если я преобразую Флот в интеджер потеряю десятые. Можно в общем то умножить на 10 и перевести в Интеджер и точку выводить всегда на одном сегменте.
Но как бы не совсем правильно

Добавлено (15.02.2016, 11:43)
---------------------------------------------
Ваша схема наверное не то.
Речь идет о меню.
1 Вход в него активируется при удержании клавиши две секунды
1,1 Если изменения не произошли происходит сброс и индикация показаний с датчика
2  вход в меню установки заданной температуры
2,1 следующее кратковременное нажатие как я думаю запись в еепром
ну и возврат на индикацию температуры с датчика

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

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#4

Сообщение Олег » 15.02.2016{, 14:49}

Как-то сумбурно вы задачу описываете, сделал так как понял, на мультиплексоре, хотя на верхней схеме практически то-же самое.
Вложения
4433569.png
Последний раз редактировалось Олег 15.02.2016{, 15:02}, всего редактировалось 1 раз.

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#5

Сообщение rf80 » 15.02.2016{, 15:33}

спасибо. Опробую отпишусь. А установки таймеров какие и до скольки счет на счетчике до двух

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#6

Сообщение Олег » 15.02.2016{, 15:42}

Вот проект.
Вложения
Menu.flp
(147.93 КБ) 120 скачиваний

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#7

Сообщение rf80 » 15.02.2016{, 16:39}

Спасибо работает правда было две не точности элемент или нужно было на И заменить иначе все время счетчик в резете держали и по И для про инвертировать входы с L1
Буду дальше обсасывать

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#8

Сообщение Олег » 15.02.2016{, 17:30}

Не надо ИЛИ на И менять, надо инвертировать выход TOF. Если поменяете, то не будет нормально работать.

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#9

Сообщение rf80 » 15.02.2016{, 19:11}

Ну не знаю работает и без претензий. Чего то я не просчитал этот момент с TOF что он сбрасывает.
Попробовал динамически вывести на индикатор бред нужно регистров докупить.
Причем не понятно как то меняет регистры местами и один вообще не зажигает. Думаю может от того что еще аналоговые в цыфровые перевел

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#10

Сообщение Олег » 15.02.2016{, 19:36}

Если в течении 15 секунд не было никаких нажатий, то возвращается на показ температуры пункт 1.1.
 Если использовать И вместо ИЛИ, то не должно возвращаться на показ температуры ни сразу после сохранения, ни по таймеру, так как счетчик не сбросится. Счетчик не сбросится потому что выход L счетчика постоянно низкий.

vlad
Лейтенант
Сообщения: 396
Зарегистрирован: 11.09.2015{, 11:50}
Репутация: 0
Откуда: Казань

Меню для семисегментного индикатора

#11

Сообщение vlad » 15.02.2016{, 20:08}

Какой модуль семисигментника вы используете? ( если можно ссылку) тоже делаюю меню на них, но мне надо 3-4 разряда. Флпрог поддерживает 8ми разрядные, но есть такие же но 4. Только не понятно будет ли флпрог с ним работать.

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#12

Сообщение Олег » 15.02.2016{, 20:22}

Количество разрядов устанавливается в настройках модуля от 1 до ? (похоже ограничения нет ):) .

vlad
Лейтенант
Сообщения: 396
Зарегистрирован: 11.09.2015{, 11:50}
Репутация: 0
Откуда: Казань

Меню для семисегментного индикатора

#13

Сообщение vlad » 15.02.2016{, 20:25}

Нет там только один 8разрядный. Или мы говорим про применение сдвиговвх регистров?

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#14

Сообщение Олег » 15.02.2016{, 20:30}

Я про управление семисегментником, а вы о чем?
Вложения
8080176.png

vlad
Лейтенант
Сообщения: 396
Зарегистрирован: 11.09.2015{, 11:50}
Репутация: 0
Откуда: Казань

Меню для семисегментного индикатора

#15

Сообщение vlad » 15.02.2016{, 21:06}

я про другое
Вложения
1266805.png

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#16

Сообщение Олег » 15.02.2016{, 21:33}

А в таком варианте работать не будет?
Вложения
2946596.png

vlad
Лейтенант
Сообщения: 396
Зарегистрирован: 11.09.2015{, 11:50}
Репутация: 0
Откуда: Казань

Меню для семисегментного индикатора

#17

Сообщение vlad » 16.02.2016{, 00:31}

не совсем понятно. вот тема http://forum.flprogwiki.ru/viewtopic.php?f=18&t=551 не совсем понятно как решилась проблема.  я не совсем уверен что правильно все понял. платки дешевые заказал на али, но они пока не пришли. буду пробовать как придут.
Последний раз редактировалось vlad 16.02.2016{, 00:48}, всего редактировалось 1 раз.

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#18

Сообщение rf80 » 16.02.2016{, 17:21}

Дело в том что элемент TOF  тут не работает еденичка пропадает и сразу в ноль уходит сигнал. Его нужно менять на SP таймер пользовательский блок но с ним он не хочет компилироваться с ним я не разбирался.
Ну и похоже в ноль сбрасывает DMS при ИЛИ

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Меню для семисегментного индикатора

#19

Сообщение Олег » 16.02.2016{, 18:34}

Да, ошибка была, сброс шел с последнего элемента И после демультиплексора. Исправил, теперь вроде должно быть в порядке.
Вложения
4210552.flp
(148.5 КБ) 71 скачивание
Последний раз редактировалось Олег 16.02.2016{, 18:35}, всего редактировалось 1 раз.

rf80
Рядовой
Сообщения: 76
Зарегистрирован: 26.11.2015{, 20:29}
Репутация: 0

Меню для семисегментного индикатора

#20

Сообщение rf80 » 16.02.2016{, 21:29}

ТОФ работать там не может.
После отпускания кнопки сигнал тоже прерывается
есть вот такая схема но я пока не соображу как запустить перезапуск при нажатии кнопок нужен резет
таймеру
Вложения
__.flp
(72.66 КБ) 120 скачиваний

Ответить

Вернуться в «Дисплеи и индикаторы»