Как обнаружить третье состояние вывода микроконтроллера?
Вложений: 1
Привет всем!
Имеется мультиплексор 74HC4053 на три канала один к двум. Один канал не используется. Переключение остальных двух каналов должно происходить одновременно. Для управления этим мультиплексором есть ровно одна ножка микроконтроллера (ESP32). Теперь нужно сделать так, чтобы МК мог отключить мультиплексор подав ему на вход E высокий уровень. Добиться этого я надеялся путем переключения соответствующего GPIO в режим input, чтобы не тратить вторую ножку МК. То есть нужно придумать как превратить 0 или 1 в режиме "на выход" в низкий уровень, а режим "на вход" в высокий уровень. Как это сделать? Спасибо. |
Цитата:
|
Вложений: 2
Цитата:
Сам мультиплексор и управление им работают от 3,3 вольт, это проверено на практике. Проблема именно в том, что я не понимаю как обнаружить, что ножка МК перешла в состояние "на вход". |
Чтобы вопрос был понятней, вот чего нужно добиться.
Код HTML:
|ESP32 GPIO | Мультиплексор SELECT | Мультиплексор ENABLE | |
Не пойму о каком третьем состоянии речь? Хотя есть ТТЛ с третьим состоянием на выходе,
это высокоомное, т.е. вобще ни чё не должно показывать, ни "0", ни "1" ... :))) |
Коробочка с надписью загадка, это и есть гипотетическое устройство определения состояния пина проца? Если так, то могу предложить следующее: поскольку на выходе проца могут быть только логические ноль и единица, а то что на входе, ему пофиг - просто создать делитель напряжения питания, из достаточно высокоомных резисторов, к примеру одинакового номинала, чтобы не нагружать пин в режиме выхода. А вот ваша коробочка, с надписью загадка, должна определять уровень напряжения на этом пине. То есть она должна включать в себя компаратор, который будет следить за напряжением на этом пине - если на нём установится половина напряжения питания, значит пин переключился на вход, и компаратор должен выдать высокий уровень на вход enable мультиплексора
|
Это уже интересней! И как будет устроен такой компаратор?
|
Вложений: 1
Цитата:
|
Вложений: 1
Собрал пока в симуляторе. Вроде бы работает. Спасибо за идею!
Инвертор - не вижу зачем он тут; если на входе напряжение из середины диапазона, то на выходе имеем высокий уровень, то есть что и требовалось. Смущает только выходная часть. Не уверен, что можно вот так просто соединить выходы операционников. И про диодную развязку можно поподробнее? |
Вложений: 1
Еще мне на другом форуме говорят, что при таком подходе на входы S0 и S1 будет подаваться промежуточное напряжение, которое ни ноль ни единица, и так делать нельзя несмотря даже на то, что документация утверждает, что если EN=HI, то от S0 и S1 ничего не зависит.
Хотелось бы выяснить чем это чревато. |
Часовой пояс GMT +4, время: 19:57. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.