Цитата Сообщение от ПавелП Посмотреть сообщение
Привет всем.

Иногда важно знать точное событие на входе, и достаточно знать, во сколько точно происходят прерывания - нет необходимости немедленно реагировать.
При очередном выполнении POU раз в 1мс, анализ переменной содержит параметр, когда произошло прерывание, и по какому входу.
Подскажите, реализовано ли такое в какой либо библиотеке?

По документации:
... максимальная частота сигнала, подаваемого на дискретный вход 1кГц при программной обработке 10кГц при применении аппаратного счётчика и обработчика энкодера
т.е. 1кГц = 1мс и нет другого варианта - только специализированные под энкодер ...

P.S. Про PRU слыхал/читал. но это уже следующий шаг.
По ссылке удалось запустить на ПЛК160, и с доработкой получить то что надо.
Глюков при тактовой проца 400 МГц с заданным (100мкс) циклом 100т не наблюдается.

"Быстрые" входы действительно удалось сделать быстрыми.
На одну полуволну сетевого напряжения 50Гц ~80 опросов,
что позволило достаточно точно считать косинус фи.
Это позволило не покупать 4 шт неприлично дорогих модуля.
Как я понял, быстро возможно читать через SysPortIn(любой порт).
Выходы: есть только релейные, и 4 ADC выхода. Но там живут черепахи...
Управлять симисторными группами не получится с этой версией.

Осталось разобраться:
- и реализовать осциллограф лог уровней на 4 входа;
удалось построить два графика для двух полуволн - но там 1 мс шкала.
- RAM 16 мб, что там с DMA и работой со скоростью ядра;
- PRU SoC AM1808 имеет 2 независимых ядра программируемого блока реального времени;
там некий АСМ, интересно будет порыться -
- и ПЛК160 вполне сможет работать со звуком - анализировать вибрацию и шумы.