Запрограммировать реагирование на набор цифровых посылок.
- Войдите на сайт для отправки комментариев
Уважаемые знатоки.
Подскажите по какому пути идти в решении такого вопроса:
есть к примеру девайс, который в порт (один цифровой выход) выдает некие значения, набор 1 и 0 которые нигде не описаны. Выдается один и тот же код при разных например алармах.
это стандартная ситуация.
Так вот - ковыряться и разгадывать код нет ни желания ни времени, смысла особого нет
Подозреваю, что есть решения для Ардуино по записи и последующем "опознании" этой записи как стандартной, и присвоении определенной команды для Ардуино. Например девайс выдает 5 кодов при пяти разных алармах. Как набор из нулей и единиц этой посылки сделать запоминаемым для Ардуино? С последующим четким реагированием на каждый аларм выдаваемый тем девайсом?
Надеюсь описал свои хотелки достаточно понятно, если что задавайте уточняющие вопросы.
Создайте массив, в цикле читаете состояние ноги и записываете в массив, потом все выводите в сериал, увидите повторяющиеся последовательности нулей и едениц, а там уж решайте, что Вам с ними делать.
Реверс инженеринг. Вы случайно не сигнализации вскрывать собрались? С этим шагайте на другие форумы...
Short Circuit, нужно понимать с каким протоколом передачи вы имеете дело. Сколько бит передаётся, какая длины паузы, какая длина бита единицы/ноля, есть ли служебные биты. Нужен либо осциллограф, либо логический анализатор. Ловить то, не знаю что -это слишком долгий путь.
вы не поняли ни меня, и не понимаете как сигнализации работают.
мне нужно реагировать на принятую посылку аларма например снятого в кофе-автомат..
таких приеров кругом валом.
и реверс-инжениринг здесь как бы совсем и не нужен, нет задачи вскрывать сам код, есть задача - просто на него реагировать, запомнить что вот он был такой и сейчас повторилась эта посылка.
Short Circuit, нужно понимать с каким протоколом передачи вы имеете дело. Сколько бит передаётся, какая длины паузы, какая длина бита единицы/ноля, есть ли служебные биты. Нужен либо осциллограф, либо логический анализатор. Ловить то, не знаю что -это слишком долгий путь.
вот вот... это долгий путь, ради отлова например одного -двух-тех алармов и очень короткий - типа словить "закончился сахар". вскрывать весь протокол как бы абсолютно нелогично и трудозатратно.
кстати, посмотрите, а здесь не подобным образом решается прием команд от радиобрелка??
http://letsmakerobots.com/node/35959
Что может быть проще с одной скоростью записать сигнал, а потом с той же скоростью его выплюнуть один к одному. Не говорю про диалоги. Повторяющиеся последовательности не сложно отследить и плевать на протоколы. Логический анализатор это тоже самое, только с чёткими, видимыми временными, рамками, а не слепая запись черко определённого промежутка времени. Что тут сложного или непонятного?
Вот вот, я и говорю о сигнашках. Удачи Вам. Не хочу, чтоб какой то студент, вскрыл мою машину, с моей же помощью...
вы адекватный вообще человек? похоже не совсем. рядом масса тем о работе радиобрелков, мне нужно в итог совсем другое, и "односторонняя связь", а не как вы пишите о "двухсторонней".
мне сигнал никуда не нужно "выплевывать", мне нужно реагировать на его повторение, все.
в общем постарайтесь в этой теме не отвечать. спасибо.
обьясните, где берет тайминги для 0 и 1 импульсов именно этот скетч, не совсем пойму.
а как часто и по какой причине меняются выкидуемые битовые последовательности
да и как синхронизацию ловить?????
синхронизацию ловить - незнаю как. а как в скетче выше: просто определяется наличие нужной последовательности и все?
Short Circuit, -скетч выше примитивен до неприличия. Любой импульс длиннее 1ms он записывает как приём единицы, любой импульс короче -как приём ноля. При отсутствии сигнала он забивает массив нолями по одному нолю каждую секунду. При появлении сигнала посореди цикла он начнёт дописывать массив с того места, где он был . Хороший пример как не надо программировать :)
да, я понимаю, что он сильно примитивен, все верно.
запустил его у себя - работает - выдает 0000000000000000000000000000000
вопрос - как поменять время вборки 1 мс ?? или оно от скорости пульта работает?
кстати, вот что он только что выдал мне с брелка -
Short Circuit, мой вам добрый совет -забудьте про этот скетч. Купите логический анализатор, 5 баксов всего, а пользы на все 200. И сейчас и в дальнейшем пригодится. Снимите картинку импульсов -тогда разберём как её на ардуине сделать.
какой анализатор?
http://www.youtube.com/watch?v=qm2aLMX6lu8