ViKtor_VK Опубликовано 31 марта, 2008 Поделиться Опубликовано 31 марта, 2008 Обрисуй в общих чертах. Хочу сделать программно. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 31 марта, 2008 Поделиться Опубликовано 31 марта, 2008 а что там обрисовывать? просто считывай состояние клавиатуры не чаще чем 100мс и никаких дополнительных ухищрений производить больше не надо. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Zer Опубликовано 31 марта, 2008 Поделиться Опубликовано 31 марта, 2008 Я всегда делала по таким схемам... Что-то меня правая схема смущает... 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторовОбязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Света Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 А что вас смущает? При нажатии кнопки конденсатор быстро заряжается через резистор 5,1 кОм и на правой обкладке появляется короткий отрицательный импульс. Дребезг контактов уже не будет влиять, то есть импульсов больше не появится, пока конденсатор не разрядится через 1 МОм. 0 Если хотите, чтобы жизнь улыбалась вам, подарите ей своё хорошее настроение Ссылка на комментарий Поделиться на другие сайты Поделиться
Zer Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 Отпускание кнопки в этой схеме поймать нельзя. 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
Света Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 А это нужно? Если это важно, можно применять другие схемы 0 Если хотите, чтобы жизнь улыбалась вам, подарите ей своё хорошее настроение Ссылка на комментарий Поделиться на другие сайты Поделиться
Zer Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 Господа микроконтроллерщики! А как грамотно сделать следующее (используем Си, AVR):... 2. Определить, длинное это нажатие (свыше 2 с) или короткое ... Вот зачем. 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 (изменено) 2. Определить, длинное это нажатие (свыше 2 с) или короткое Сканируешь кнопки каждые 20-100мс (никакого антидребезга при этом аппаратно делать не надо - проверено неоднократно) для каждой кнопки - переменная, если состояние кнопки - не нажато обнуляешь, если нажата - прибавляешь 1 проверяешь на значение чтобы было не больше 64 скажем, после этого анализируешь состояние кнопок для определения необходимой реакции на нажатие/отпускание и при обработке смотришь значение соответствующей переменной (можно выделить 1 байт, старший бит - под предыдущее состояние кнопки для определения событий нажатие/отпускание) чем больше значение - тем дольше держится кнопка... Этот алгоритм помоему очевиден ... по крайней мере я так делал для своей схемы, но там была всего лишь одна кнопка и счетчик насчитывал количество полупериодов сетевого напряжения. Изменено 1 апреля, 2008 пользователем Alexeyslav 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
Zer Опубликовано 1 апреля, 2008 Поделиться Опубликовано 1 апреля, 2008 У автора вопрос, по-моему, решен. Просто, если бы он попробовал собрать по второй схеме, то ничего хорошего-бы не вышло... А вот если по нажатию ловится прерывание, тогда антидребезг полюбому надо. 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 2 апреля, 2008 Поделиться Опубликовано 2 апреля, 2008 Нет, если сканировать кнопки с интервалом не менее 20мс никаких специальных мероприятий по подавлению дребезга проводить не надо. А если по прерыванию... стоит тогда задаться вопросом, а так ли это необходимо? Кнопку ведь всеравно не нажмешь мгновенно, о скорости реакции на нажатие кнопки поэтому даже и речи быть не может. если же всетаки допустить что это просто необходимо, то тут уже не обойтись обычными схемами - прийдется соорудить одновибратор, хотябы на всем известной 1006ВИ1, или же организовывать независимый отсчет времени в программе и игнорировать поступающие прерывания в течении 1-2мс после получения оного. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
Zer Опубликовано 2 апреля, 2008 Поделиться Опубликовано 2 апреля, 2008 Нет, если сканировать кнопки с интервалом не менее 20мс никаких специальных мероприятий по подавлению дребезга проводить не надо. Ну ты поробуй... Похоже не нарывался на подобные пакости... Кнопку ведь всеравно не нажмешь мгновенно, о скорости реакции на нажатие кнопки поэтому даже и речи быть не может. Конечно, только контакт будет дребезжать, что вызовет хорошую пачку импульсов на линии. если же всетаки допустить что это просто необходимо, то тут уже не обойтись обычными схемами - прийдется соорудить одновибратор, хотябы на всем известной 1006ВИ1, или же организовывать независимый отсчет времени в программе и игнорировать поступающие прерывания в течении 1-2мс после получения оного. Ух. Одновибратор? Мсье, вы нажали кнопку. Через 3с её отпустили. Какой одновибратор??? А, вообще, сомневаешься - порисуй временные диаграммы. В одновибратором, с триггером, с цепочками, предложенными Светланой, и просто с кнопкой и резистором на порту. Попробуй. 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
wowa Опубликовано 2 апреля, 2008 Поделиться Опубликовано 2 апреля, 2008 Я думаю что тут надо прменить немного другой подход... Нужно установить МИНИМАЛЬНОЕ ВРЕМЯ нажатия для того чтобы было розпознано как короткое нажатие.. Всё что было дольше чем минимальное - будет максимальное.. Вот и всё.. И ненадо ждать секунды... А вот если надо чтото такого на самомо деле то делается это через таблицу с насканироваными данными и отслеживать только нажатие или отжатие кнопок... И отоброжать их состояние в таблицу. Ну а потом процедуру на таймер которая будет время от времени сканировать таблицу и когда обнаружит нажатие - спустит счётчик... Как дотикал и нет отпущтения - значить больше чем столько-то времени Причём счётчик может быть на каждую кнопку свой... Вобщем это на обьекты 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 2 апреля, 2008 Поделиться Опубликовано 2 апреля, 2008 Ну ты поробуй... smile.gif Похоже не нарывался на подобные пакости... Только так и делаю. просто та схемы, и высокая надежность распознавания нажатия, конечно если "дребезг" длится меньше 20мс. Впрочем, если этот дребезг больше - то стоит заменить кнопку. Конечно, только контакт будет дребезжать, что вызовет хорошую пачку импульсов на линии. Состояние кнопки считывается раз в 20мс, все эти пачки импульсов будут просто проигнорированы. И вообще, плохо дело если приходится ставить кнопки на прерывания для подсчета чего-либо, прерывания на кнопках имеет смысл использовать только для пробуждения контроллера. Весь смысл считывания состояний кнопок заключается в том что даже если в момент считывания происходит переходной процесс считано может быть только одно из двух состояний кнопки - если будет считано "отключено", то при следующем опросе состояние кнопки будет считано надежно, уже явно после переходного процесса, если же будет считано "включено" - то собственно это ли не обозначает что кнопка нажата? а в периодах между опросами состояний все изменения просто игнорируются. Ух. Одновибратор? Мсье, вы нажали кнопку. Через 3с её отпустили. Какой одновибратор??? Есть такой интересный тип одновибраторов - перезапускаемые, в них интервал отсчитывается от спада последнего импульса а не от первого! поэтому пока есть сигнал - одновибратор находится в режиме перезапуска, как только отпустил - идет отсчет времени. Такой довольно просто реализуется на 1006ВИ1. (и это я тоже делал, но показалось мне не практичным по сравнению с первым методом). 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
GiG Опубликовано 3 апреля, 2008 Поделиться Опубликовано 3 апреля, 2008 Зачем изобретать велосипед? С дребезгом бороццо можно исключительно програмно к примеру есть процедура опроса клавиатуры, опрашываем сохраняем значение через время привышающее время дребезга (для вашей кнопки) опрашиваем заново, (причём в это время может выполняццо какойнить другой код) если был 0 стал 1 то нажата если был 1 стал нол отпущена. вот вам интересный документ USEPIC.PDF 0 Ваши права преследуются по закону! Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 3 апреля, 2008 Поделиться Опубликовано 3 апреля, 2008 Что может быть проще обычного опроса без ухищрений всяких? приведенный вами алгоритм и то сложнее, а выполняет ту же самую функцию. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
Zer Опубликовано 7 апреля, 2008 Поделиться Опубликовано 7 апреля, 2008 А потому, что во время дребезга контактов ты таких офигенных данных с порта насчитаешь! 0 Пока в груди моей бьётся мотор, надежда есть на чистый бензин... Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 7 апреля, 2008 Поделиться Опубликовано 7 апреля, 2008 И каким же образом? когда на время дребезга приходится только ОДНО считывание состояний кнопок. В этом весь смысл - считывать состояния (тем самым защелкивая во внутреннем регистре) в несколько раз реже чем происходит переходный процесс дребезга у кнопки - это гарантирует что в процессе дребезга контактов прийдется только ОДНО считывание состояния, а оно может быть одно из двух - или то что БЫЛО или то что наступит гарантированно в следующем считывании, а если и не наступит то сам факт изменения состояния говорит о том что кнопка в периоде между выборками нажималась. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
Жека46 Опубликовано 26 октября, 2009 Поделиться Опубликовано 26 октября, 2009 я не о кнопках, но о некоторой фичи, которую я хочу реализовать. Имеется 8 штырей, и надо дип переключателями менять их состояние. Состояния такие: Hi-Z, питание Vcc через резисторы в 10к, и общий вывод GND. Помогите составить схему... 0 Stalker46 - это я Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 26 октября, 2009 Поделиться Опубликовано 26 октября, 2009 дык ... это шутка чтоли? или прикол какой? в какой стороне скрытая камера находится? вешаешь кнопки со штырей на GND и все... что сложного? 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
27311444 Опубликовано 2 марта, 2010 Поделиться Опубликовано 2 марта, 2010 Всем доброго времени суток! Мне нужен совет,помощь в реализации следующей задачи...Необходимо сделать так,чтобы клавиатура(некомпьютер) запоминала набраное на ней. Как это можно реализовать? Помогите пожалуйста,кто чем может. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 2 марта, 2010 Поделиться Опубликовано 2 марта, 2010 Контроллером. Подробней, увы, ответить на ТАКОЙ вопрос нельзя. 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
27311444 Опубликовано 3 марта, 2010 Поделиться Опубликовано 3 марта, 2010 Благодарю,уже легче,не сильно,но ближе... 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
robot-5 Опубликовано 4 мая, 2010 Поделиться Опубликовано 4 мая, 2010 (изменено) Здравствуйте,подскажите пожалуста,у меня в проекте подключаются кнопки к ацп,вопрос в том что я низнаю как с помошью резистора подключить кнопку,плис прошу помоши зарисование схемки(кнопки) к ацп? Изменено 4 мая, 2010 пользователем robot-5 0 Электроника эта пламя страсти без неё никуда. Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexeyslav Опубликовано 4 мая, 2010 Поделиться Опубликовано 4 мая, 2010 Так в чем собстно проблема? берешь резистор, кнопку и подключаешь ... 0 Учение - изучение правил. Опыт - изучение исключений. Ссылка на комментарий Поделиться на другие сайты Поделиться
rtfcnf Опубликовано 5 мая, 2010 Поделиться Опубликовано 5 мая, 2010 Здравствуйте,подскажите пожалуста,у меня в проекте подключаются кнопки к ацп,вопрос в том что я низнаю как с помошью резистора подключить кнопку,плис прошу помоши зарисование схемки(кнопки) к ацп? Ключевые слова «делитель напряжения». Два резистора включены последовательно, один конец нашей сборки подключен на «+», второй через кнопку на землю, средний на АЦП. Для подключения нескольких кнопок воспользуйся в поиске фразой R-2R ИМХО: но так кнопки подключать не стоит. 0 Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности за материальный, либо моральный ущерб причиненный данным сообщением напрямую или косвенно. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.