Муфты электромонтажные от производителя Fucon

Микроконтроллер считывает данные, получаемые в параллельном виде через один вывод

Умелое использование импульсов различной длительности обеспечивает считывание медленно меняющегося потока последовательных данных через одну линию ввода-вывода.

Получение нескольких бит информации через один вывод микроконтроллера без использования сложного UART выглядит заманчиво. Такие схемы могут обеспечивать сканирование клавиатуры, переключателей режима или других подобных источников медленно меняющихся данных. В ссылке 1 описан способ выдачи сигналов через один вывод микроконтроллера. Данные от набора переключателей S1 поступают на IC3, 74HC165, преобразователь параллельных данных в последовательные компании NXP Semiconductors (рис. 1). Для загрузки данных в сдвиговый регистр служит импульс на линии PL (выв. 1). Выдача длинного импульса на линии подключения к микроконтроллеру, CK, формирует этот импульс. Элементы R2 и C2 формируют задержку сигнала, и как только длительность импульса превысит эту величину задержки, линия PL переходит в низкое состояние и данные загружаются в микросхему.

Электромеханические реле Hongfa – надежность и качество 19 января 2023

После того, как на линии PL установится высокий уровень, более короткие импульсы с порта ввода-вывода микроконтроллера формируют импульсы на входе тактирования сдвигового регистра, CP, но не на входе PL. Длительность этих тактовых импульсов должна быть больше чем величина задержки формируемой цепочкой R1C1 но меньше чем формируемой цепочкой R2C2. Тактовые импульсы сдвигают данные таким образом, что все 8-бит последовательно поступают на выход сдвигового регистра, QQ.

Если на короткое время изменить тип порта микроконтроллера на высокоомный вход, эти данные сдвигового регистра будут превалировать на шине, благодаря отношению номиналов R1, R2, и R3, так как R3 имеет намного меньший номинал. Высокоомное состояние порта должно длиться меньше чем постоянная времени R1C1 (рис. 2). Теперь микроконтроллер может считать значение бита данных. Использование импульсов трех разных периодов обеспечивает выполнение трех разных функций: загрузки, тактирования и считывание бита. Время, требуемое микроконтроллеру на изменение режима порта, считывание бита данных и восстановления режима работы порта в качестве выхода определяет временные соотношения в схеме. Например, микроконтроллеру с выполнением команды за 1мкс требуется на это 10 мкс.

Для исключения ложных импульсов на линии CP, данная величина должна быть меньше чем 0.33R1C1, таким образом величина задержки R1C1 должна составлять 30 мкс а R2C2 - 200 мкс. Данные установки должны обеспечить полное считывание 8-бит данных за время равное приблизительно 1мс. Для обеспечения более быстрой работы, замените RC цепочки на точные перезапускаемые ждущие мультивибраторы, такие как 74HC123 компании NXP и логические элементы. Вы можете расширить данную схему сдвиговыми регистрами для чтения десятков сигналов.

Обратите внимание, схема сдвигового регистра 74HC165 предотвращает сдвиг данных по сигналу CP когда вход LD активен. Резистор R4 обеспечивает правильную последовательность LD и CP. Диоды D1 и D2 служат для быстрого разряда конденсаторов цепочек R1C1 и R2C2 для формирования стабильной величины задержки сигнала.

Ссылки

  1. Niven, Rex, “RC lowpass filter expands microcomputer’s output port,” EDN, June 21, 2007, pg 74.

На английском языке: Microcontroller Inputs Parallel Data Using One Pin

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя