Доскерцитата: |
ИМХО, надо отказываться от моргания при активации функции в принципе. |
Да, я думаю, что продолжительное моргание не нужно.
цитата: |
Может, тогда остановиться на варианте 3 с подтверждением нажатия (светодиод горит, пока держим кнопку)? |
Думаю, что нужно ввести два подтверждения:
1. Нажатие кнопки воспринято модулем - мигание светодиодом. Показывает в частности, что кнопка исправна.
2. Модуль выполнил команду с кнопки (на самом деле этого может и не быть, команда просто запомнена модулем, и будет выполнена при наступлении необходимых условий или отменена) - мигание аварийкой. Показывает, в частности, что связь модуля с автомобилем исправна. Может отключаться в меню настройки.
цитата: |
С повторным нажатием кнопки оставляю все без изменений - повторная активация функции из таблицы (подтверждение функции), никаких отмен. |
В целом да, нужно оставить как в таблице.
Но тут есть непонятность которую ты так и не прояснил. Существуется ли промежуток времени с момента команды включения или выключения ППП, до момента когда модуль считает ППП включенным или выключенным.
Пример. Водитель нажал кнопку для включения ППП, но тут же передумал и интуитивно нажал кнопку повторно, чтобы ППП не успел включиться. Формально - не соответствует логике таблицы т.к. выключение происходит только при включенном ППП. - Но так должно работать или нет?
Если должно (и может быть полезно). то проблема с логикой и индикацией.
Если не должно, то тогда получается, что все нажатия до того как ППП перейдет в состояние "включено" будут воприниматься как подтверждение включения (или должны игнорироваться модулем - светодиод моргает, аварийка - нет), а повторные нажатия после включения ППП будут восприниматься как подтвержение выключения (или тоже игнорироваться). Продолжающиеся и после этого нажатия снова приведут к включению, и т.д. пока не сработает какая-нибудь защита.
А как это сейчас работает в такой ситуации?
цитата: |
Сейчас может выйти из режима программирования не сразу, а после 1-2-3 нажатий на тормоз. Переделаю ,чтобы выходил всегда и сразу. |
Тогда введенные полностью коды сохраняются, частично введенные - игнорируются.
Под вопросом неполная последовательность нажатий входа в режим программирования. Тоже должна игнорироваться при пуске двигателя или восприниматься как запуск функций при включенном зажигании? Фактически, актуально только для функции "Однократный запрет на догревание двигателя".
Некий интеллект был бы удобен, но логику работы нарушает.
Видится, что нажатия (6 раз сейчас) при включенном зажигании и нажатом тормозе подверждаются светодиодом, но не аварийкой - чтобы водитель понял, что что-то не так.
Сброс - выключение зажигания.
А что будет если во время нажатий входа в меню состояние тормоза изменится?
Похоже, что лучше бы поменять последовательность входа а программирование.
цитата: |
Ну. если предложить ее нажать и отжать несколько раз - почему нет? А вот сигнала от водительской кнопки в шине нет. Водительской стекло можно открыть только с водительской двери. Видимо поэтому. ТЕКовский модуль тоже использует кнопку поднятия правого стекла. |
Не хочется дергать мощный потребитель.
Стеклоподъемник действительно правый, может его как-нибудь задействовать? Пока не могу придумать как.
А может быть не связываться с обогревом и стеклоподъемником, а различать короткие и длинные нажатия кноки?
Хотя бы при нажатом тормозе и включенном зажигании.
Скажем для входа в программирование удерживать кнопку не менее N секунд (N= от 4 до 10, надо прикинуть).
цитата: |
Может, лучше на 1 с включать после нажатия? |
Получается, что так действительно лучше. А в режиме программирования можно на 1 с гасить.
Тогда в случае с программированием.
Нажатие кнопки+зажигание+тормоз+ППП выключен= светодиод мигает на 1 с, аварийка мигает 1 раз.
Отпустили кнопку раньше, чем через N секунд, и/или запустили двигатель - активировалась функция однократного запрета догревания. Выключили зажигание без пуска двигателя - сброс команды. Реакция модуля на кнопку только после отпускания и повторного нажатия.
Продолжаем удерживать кнопку N секунд - светодиод зажигается, аварийка моргает
уже 2 раза. Мы в режиме программирования.
Ввод кодов как описано.
Выключение зажигания или пуск двигателя - выход из программирования.
При условии, конечно, что кнопка не западет. Но действия в случае западания тоже надо предусмотреть.
Как-то так.