|
В своё время разрабатывали мы Комплекс Горочный Микропроцессорный на базе элементов КТС-ЛИУС-2. В его состав входили различные модули:
- модуль процессора (на базе процессора КР580ВМ80),
- модуль ввода,
- модуль вывода и т.д.
В КГМ необходимо было вводить достаточно много дискретных сигналов, один модуль ввода мог ввести 32 дискретных сигнала, кол-во модулей устанавливаемых в блок было, вроде 21, т.е. нужное кол-во модулей не помещалось. Вот тогда В.В. Кольцов (сейчас гл. инженер ЮгПромАвтоматизации) предложил сделать матричный ввод (1988 г. в матрице были сухие контакты реле), т.е. поставить один элемент ввода и один элемент вывода, что позволило вводить 1024 сигнала (32*32). Кроме того сразу же сделать диагностику элементов ввода-вывода, искусственно по главным диагоналям вводить по одной 1, по другой 0.
Тоже самое можно сделать на базе Arduino. Рекомендую писать на "С" (или на С++)(изучение "С" займет не много времени), это гораздо проще и быстрее, чем на ассемблере.
Всем всего доброго!
Просто инженер АиТ добавил 25.01.2016 в 09:10
А еще. На адаптере ввода производится ввод дискретного сигнала, питаемый переменным током. Т.е. опрос в какой-то любой момент времени не подходит, поэтому на один из входов подаётся напряжение питание, которое генерирует что-то типа прерывания, в момент, когда на этом входе 1. По прерыванию начинается опрос всех дискретных сигналов (пока на входе прерывания 1) по принципу интегрирования состояния, если после интеграции получаем 1, то в регистр записывается 1.
__________________
Не важна реальность, важно как мы к ней относимся!
Последний раз редактировалось Просто инженер АиТ; 25.01.2016 в 12:21.
Причина: Добавлено сообщение
|