Помощник
Здравствуйте, гость ( Вход | Регистрация )
![]()
Сообщение
#5158
|
|
![]() Special Группа: Главные администраторы Сообщений: 13300 Спасибо сказали: 2053 раза ![]() |
Задача, нужно сделать так, чтобы процессор мог определять, какой сигнал приходит, плюс или минус. Проще говоря, обычно легко определять какой либо один из сигналов, подтянув порт резистором, а вот как быть, когда нужно определять двух-полярный сигнал??
Пример: есть у сигналки концевик двери, на который приходит или земля, если дверь открыта, или разомкнуто "воздух". Итак, на вход порта подана земля (минус), значит дверь открыта. А вот как сделать, чтобы мы могли видеть три положения на входе, это сигнал плюс (лог 1), земля (лог 0), и воздух (на порт не приходит ничего)? |
![]() ![]() |
|
Ответить |
![]()
Сообщение
#6871
|
|
![]() Группа: Участник Сообщений: 81 Спасибо сказали: 8 раз ![]() |
Привет Очумельцам!
У самого часто возникают подобные ситуации, когда приходится отслеживать состояние на чем нибудь. Нашел для этого несколько схем на ждущих одновибраторах, но так и не применяю на практике ввиду относительной сложности , проще по месту найти и подогнать. Но идея всеравно осталась, Я так понял надо отслеживать состояние ,допустим концевика, и при его изменении выдавать на выходе команду. Очень было бы полезно при установке допустим сигнализаций и иммобилайзеров, особенно нестандартных решений , в том числе самодельных. Так вот пришел к выводу что это надо делать на контроллере, даже нашел нечто подобное, но так как в программировании не силен , до ума так и не довел, может все таки все вместе решим этот вопрос, лично у меня есть такой интерес. По ссылке обсуждение проблеммы на форуме программистов, думаю что это какт раз и есть наш случай, Кто что думает по этому поводу? http://forum.vingrad.ru/forum/topic-178847...y1297417/0.html |
![]() ![]() |
|
![]()
Сообщение
#14763
|
|
![]() Группа: Участник Сообщений: 559 Спасибо сказали: 0 раз ![]() |
развязаться двумя портами процесора, на один порт пришел сигнал процик знает что это пришел "-", на другой порт пришел сигнал, проц знает, это пришел "+" сигналы на разных портах могут быть одинаковыми
все зависит какой проц будет использоваться и есть ли свободный порт -------------------- ----------------------
www.ctlab.ru |
![]() ![]() |
|
![]()
Сообщение
#14921
|
|
![]() Группа: Пользователи Сообщений: 11 Спасибо сказали: 0 раз ![]() |
если в проце есть отключаемый pull-up резистор можно распознавать три состояния 0, VCС, "в воздухе"
P.S. или внешнюю отключаемую поддтяжку сделать Отредактированно TMM - 25.3.2009, 18:47
|
![]() ![]() |
|
![]()
Сообщение
#15040
|
|
![]() Группа: Участник Сообщений: 81 Спасибо сказали: 8 раз ![]() |
Хоть кто то откликнулся :-)))
развязаться двумя портами процесора, на один порт пришел сигнал процик знает что это пришел "-", на другой порт пришел сигнал, проц знает, это пришел "+" сигналы на разных портах могут быть одинаковыми все зависит какой проц будет использоваться и есть ли свободный порт Так конечно проще, но предполагается ,что мк будет с минимальными размерами, и соответственно каждый порт на счету, да и зачем, если это можно сделать программно. если в проце есть отключаемый pull-up резистор можно распознавать три состояния 0, VCС, "в воздухе" P.S. или внешнюю отключаемую поддтяжку сделать Это мы знаем , что можно. Вопрос как? Придется похоже самому Ассемблер изучать, нигде не нашел готовых примеров. вот есть варианты на дискретных элементах: Прикрепленные файлы
|
![]() ![]() |
|
![]()
Сообщение
#15043
|
|
![]() Special Группа: Главные администраторы Сообщений: 13300 Спасибо сказали: 2053 раза ![]() |
Один порт все может замерять, а если использовать два порта на один замер, то кучеряво получается..
|
![]() ![]() |
|
![]()
Сообщение
#15082
|
|
![]() Группа: Пользователи Сообщений: 11 Спасибо сказали: 0 раз ![]() |
я делал так: вывод притянут к земле резистором клоом 50-100
пулап отключен сморим что на входе, если 1 - значит на входе плюс если 0 - включаем пулап, если на входе 1 - значит вход "в воздухе" если 0 - значит на входе земля |
![]() ![]() |
|
![]()
Сообщение
#15091
|
|
![]() Special Группа: Главные администраторы Сообщений: 13300 Спасибо сказали: 2053 раза ![]() |
я делал так: вывод притянут к земле резистором клоом 50-100 пулап отключен сморим что на входе, если 1 - значит на входе плюс если 0 - включаем пулап, если на входе 1 - значит вход "в воздухе" если 0 - значит на входе земля Мне кажется, что слишком много инструкций для определения одного сигнала, и уж тем более возможен пролет при кратковременном сигнале. И каков промежуток времени каждого опроса порта в комплексе за один цикл? |
![]() ![]() |
|
![]()
Сообщение
#15495
|
|
![]() Группа: Пользователи Сообщений: 11 Спасибо сказали: 0 раз ![]() |
что является кратковременным сигналом при времени исполнения инструкции например 0.1 микросекунды? (AVR на 10MHz)
|
![]() ![]() |
|
![]()
Сообщение
#16854
|
|
![]() Группа: Real User Сообщений: 193 Спасибо сказали: 10 раз ![]() |
Ищите процы со встроенными компараторами и замеряйте утечку.
|
![]() ![]() |
|
![]()
Сообщение
#18714
|
|
![]() Группа: Пользователи Сообщений: 1 Спасибо сказали: 0 раз ![]() |
Поддерживаю идею ТММ. Такие задачи лучше решать программно. Если конечно уметь программировать.
|
![]() ![]() |
|
Ответить |
![]() |
|
Сегодня, 0:58 Посл. ответ от slalex |
|
![]() |
|
3.1.2024, 5:58 Посл. ответ от Александр |
|
![]() |
|
25.7.2022, 7:21 Посл. ответ от Fedorov |
|
![]() |
|
16.3.2022, 12:28 Посл. ответ от Saveliy |
|
![]() |
|
22.3.2015, 3:08 Посл. ответ от Saveliy |
![]() |
|
Сегодня, 9:12 Посл. ответ от Сергей |
|
![]() |
|
Сегодня, 0:58 Посл. ответ от slalex |
|
![]() |
|
Сегодня, 0:52 Посл. ответ от Илья |
|
![]() |
|
Вчера, 10:04 Посл. ответ от Levap79 |
|
![]() |
|
6.7.2025, 22:23 Посл. ответ от Reanimotor |
Сейчас: 8.7.2025, 19:58 |