Техника

кто тут в программировании микроконтроллерах разбирается? смотрите что надо сделать

кароче
нужно измерить длительность импульса на входе
а потом с интервалами времени равными этому импульсу надо считывать состояние входа этого же или другого входа не важно
и записывать в регистр
как такое сделать можно а?
Первое что приходит в голову, это использовать таймер. У МК обычно есть входы, на которые можно вешать прерывания по перепаду сигнала на входе. С нарастанием импульса запускаешь таймер. Со спадом - останавливаешь. Потом настраиваешь прерывание уже от таймера и по этим прерываниям опрашиваешь вход. Только таймер считает до переполнения, так что надо будет в таймер занести не то, значение, которое накопилось во время импульса, а его дополнительный код (например, если таймер отсчитал 20, то каждый раз надо записывать в таймер значение 235)
ЕГ
Елена Гмызина (Гилёва)
78 067
Лучший ответ
Тебе же до лампочки размер импульса, важно получить такой же.
По началу импульса, запускаешь счетчик, останавливаешь по концу, потом запускаешь счетчик в обратную сторону и получаешь такой же импульс.
Виолетта =)
Виолетта =)
92 506
Тут важен первый этап. Снятие значения длины импульса. Предлагаю с насалом импульса запустить "сет",который уже включит таймер, а окончание импульса снимет с таймера текущее значение времени (время первого импульса) и занесет его в "рабочий "таймер. Смысл в том, что при быстродействии системы при отключении "считывающего"таймера окончанием импульса может обнулиться информация в накопителе.
"Ресет"произвести позже.
появился импульс - сбросил таймер, закончился - забрал с таймера сколько натикало. запустил таймер с этим интервалом, и по прерыванию или обнулению счетчика считываешь состояние чего там тебе надо.
Miras Urazbaev
Miras Urazbaev
39 979
Асел Кайраткызы а оно это с таймера забирать
он же тикает
его остановить надо или что
я не не особо разбираюсь в этом особенно в таймерах
Во первых надо знать порядок длительности этого импульса и параметры микроконтроллера. Сколько тактов микроконтроллера может уместится в длине этого импульса.
Да и тип микроконтроллера неплохо бы знать, для более конкретного ответа.