Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: interpreter

interpreter 21 Апр 2017 12:51 #18412

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7184
  • Спасибо получено: 1114
  • Репутация: 194
justice777 , как бы если по этому ТЗ считать , то должно хватить этого, только паузы можно другие поставить:
:start
delay(50)
if(gpioget(14)==1)
gpioset(16,1)
delay(15000)
goto start
else
gpioset(16,0)
goto start

mexail , можно задействовать переменную как флаг, чтобы исключить мигание. Хотя наверно через прерывания было бы проще, но там даже в режиме ANY не победить так просто помехи, про которые идет речь
Основной канал проекта в Telegram t.me/wifi_iot
Последнее редактирование: 21 Апр 2017 12:54 от Adminhs.
Администратор запретил публиковать записи гостям.

interpreter 21 Апр 2017 17:33 #18415

  • mexail
  • mexail аватар
  • Не в сети
  • Новый участник
  • Сообщений: 16
  • Репутация: 0
Что такое флаги не в курсе((
Выложу лучшее что получилось в итоге написать. Как сразу не допер))
При изменении gpio12 - включается gpio 15 и при изменении gpio13 - включается gpio 14. Можно жать две кнопки сразу. Все это для подключения света через обычный двухкнопочный домашний выключатель с фиксацией.
:1
valset(0,gpioget(12))
valset(1,gpioget(13))
delay(150)
:2
if(gpioget(12)=valget(0))
if(gpioget(13)!=valget(1))
gpioset(14,2)
goto 1
else
goto 3
:3
if(gpioget(12)!=valget(0))
if(gpioget(13)=valget(1))
gpioset(15,2)
goto 1
else
goto 4
:4
if(gpioget(12)!=valget(0))
if(gpioget(13)!=valget(1))
gpioset(14,2)
gpioset(15,2)
goto 1
else
goto 1
Пропуски срабатывания все равно наблюдаю, так и не понял почему...
Администратор запретил публиковать записи гостям.

interpreter 22 Апр 2017 07:37 #18423

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7184
  • Спасибо получено: 1114
  • Репутация: 194
Оригинальное решение конечно, вся сложность поиска решения для такой задачи - это что требуется отработка именно одновременно нажатия на клавиши.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

interpreter 24 Апр 2017 08:24 #18459

  • justice777
  • justice777 аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 78
  • Спасибо получено: 4
  • Репутация: 0
Adminhs пишет:
justice777 , как бы если по этому ТЗ считать , то должно хватить этого, только паузы можно другие поставить:
:start
delay(50)
if(gpioget(14)==1)
gpioset(16,1)
delay(15000)
goto start
else
gpioset(16,0)
goto start

Вопрос если пауза в 5 минут контролер будет выполнять иные процессы логика и т.д. ?есть ли многозадачность? Код я тоже такой написал только смутило что микроконтролер встанет на делэй и будет там стоять.
Администратор запретил публиковать записи гостям.

interpreter 24 Апр 2017 08:25 #18460

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7184
  • Спасибо получено: 1114
  • Репутация: 194
delay останавливает только скрипт, а не весь м/к. В описании так и написано даже..
Основной канал проекта в Telegram t.me/wifi_iot
Последнее редактирование: 24 Апр 2017 08:26 от Adminhs.
Администратор запретил публиковать записи гостям.

interpreter 31 Май 2017 13:43 #18845

  • bch5
  • bch5 аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 117
  • Репутация: 1
Хочу уточнить по printw для main page 2
Adminhs пишет:
для режима "Конструктор main page 2" не добавлялось скорее всего вывод - нужно смотреть и доделовать.
Есть движения и желание доделать? Очень хочется.
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.121 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.