Странные явления с кнопками

Обсуждаем контроллеры компании Atmel.
Ответить
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн сен 07, 2015 16:09:33

Сообщение Котище-транзисторище »

Помогите пожалуйста! Сделано устройство на микроконтроллере. На корпус выведено две кнопки, подключенные к разным пинам контроллера( tiny2313). Подтяжки к питанию по килоому на каждую кнопку. конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
После нескольких нажатий на кнопки, на семисегментном индикаторе, подключенном к контроллеру начинают отображаться кракозабры, он моргает и т.д.(этого в программе нет). Опрашиваю кнопки периодически, ожидая нажатия, а затем отпускания кнопки.
Помогите, а то замучался уже думать.http://radiokot.ru/forum/posting.php?mode=post&f=57#
Реклама
Модератор
Аватара пользователя
Сообщения: 4618
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Ещё бы знать чем помочь.
В любом случае, проблема в программе. Даже если
Котище-транзисторище писал(а):этого в программе нет
Реклама
Грызет канифоль
Аватара пользователя
Сообщения: 264
Зарегистрирован: Пт дек 07, 2012 22:50:01
Откуда: Moscow

Сообщение Cheburator »

Котище-транзисторище писал(а):конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
А это зачем? :shock:
А что подумал Кролик, никто не узнал, потому что он был очень воспитанный.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

Это видимо часть интегрирующей цепи, для подавления дребезга. Ёмкость какая-то большая, но и подтяжка у него какая-то маленькая :dont_know:
Надо просить суперсекретную программу на показ..
Реклама
Эиком - электронные компоненты и радиодетали
Грызет канифоль
Аватара пользователя
Сообщения: 264
Зарегистрирован: Пт дек 07, 2012 22:50:01
Откуда: Moscow

Сообщение Cheburator »

hybroid писал(а):часть интегрирующей цепи, для подавления дребезга
Ну, так эту проблему проще программно решать. МК, однако... :write:
А что подумал Кролик, никто не узнал, потому что он был очень воспитанный.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

На вкус и цвет.. Я вот тоже кондёры вешаю, уже машинально как-то.... МК может быть занят чем-то более полезным и "впритык".
К тому же, тема - ярый пример того, что не всё можно сразу решить программно :)))
Реклама
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн сен 07, 2015 16:09:33

Сообщение Котище-транзисторище »

Котище-транзисторище писал(а):
конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
А это зачем?
Это подавление дребезга.

Ёмкость какая-то большая, но и подтяжка у него какая-то маленькая
А какая емкость и подтяжка должна быть?

Я тут еще попробовал впаять огромный кондер на 3300uF параллельно питанию. И стало немного лучше(глюки реже). :shock: :shock: :shock:
Это откуда? Как? Почему? если проблема в коде
Держит паяльник хвостом
Аватара пользователя
Сообщения: 906
Зарегистрирован: Ср мар 28, 2012 21:45:24
Откуда: ВО

Сообщение ILYAUL »

А я Free timer использую и тоже не парюсь с дребезгом
Грызет канифоль
Аватара пользователя
Сообщения: 264
Зарегистрирован: Пт дек 07, 2012 22:50:01
Откуда: Moscow

Сообщение Cheburator »

hybroid писал(а):Я вот тоже кондёры вешаю
И тоже "по 0.1 микрофарад" ?
А что подумал Кролик, никто не узнал, потому что он был очень воспитанный.
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн сен 07, 2015 16:09:33

Сообщение Котище-транзисторище »

Код: Выделить всё

if ((PIND & (1 << 0)) == 0)
{
    while((PIND & (1 << 0)) == 0);
    //Делаем то, что делаем.
}
Avr Studio.
Это вызывается в перерывах между динамической индикацией. Точно период не знаю, но часто.
Если этот текст уменьшается - ваш монитор уносят.
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

Конденсатор не устраняет дребезг, а уменьшает его амплитуду, что для цифровой схемы малоэффективно. Но зато он при каждом нажатии поджигает контакты. Немного конечно, но это смотря сколько раз нажать на кнопку.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

Cheburator писал(а):И тоже "по 0.1 микрофарад" ?
Исключительно по 100мкФ.
Электрический кот
Аватара пользователя
Сообщения: 1031
Зарегистрирован: Чт июн 20, 2013 00:00:58
Откуда: москва, м.Сходненская

Сообщение Mishany »

while и delay самое зло для использования в опросе кнопок....
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Ср апр 24, 2013 19:33:05

Сообщение Valek174 »

Mishany писал(а):while и delay самое зло для использования в опросе кнопок....
А какие еще есть варианты? Приведите пример пожалуйста.
Встал на лапы
Аватара пользователя
Сообщения: 109
Зарегистрирован: Чт сен 03, 2015 15:52:10
Откуда: Сибирский федеральный округ

Сообщение DronVolk »

Ага еще и в прерывании.

В прерывании ноги ставить флаг что было событие нажатия кнопки и запускать таймер в прерывании которого проверить осталась ли кнопка нажата.

код писать не берусь так как не понятно какой компилятор используется.
я повелитель электронов! Но иногда появляются электроны бунтари и делают, что им вздумается, например, прокладывают новые пути движения...

"Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного." Альберт Эйнштейн.
Модератор
Аватара пользователя
Сообщения: 4618
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Valek174 писал(а):А какие еще есть варианты? Приведите пример пожалуйста.
http://radiokot.ru/forum/viewtopic.php?f=61&t=79801
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн сен 07, 2015 16:09:33

Сообщение Котище-транзисторище »

Ура товарищи!
Проблему я решил подпаиванием банки на сто микрофарад параллельно кнопке и защитой от дребезга в коде(задержки и перепроверки).
Если этот текст уменьшается - ваш монитор уносят.
Друг Кота
Аватара пользователя
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Сообщение hybroid »

Котище-транзисторище писал(а):банки на сто микрофарад
Это пиздец. :facepalm: Уже на тыщу сразу..
Друг Кота
Аватара пользователя
Сообщения: 3521
Зарегистрирован: Вт окт 22, 2013 04:37:23
Откуда: Казань

Сообщение smacorp »

Котище-транзисторище писал(а):Проблему я решил подпаиванием банки на сто микрофарад параллельно кнопке
Маловато будет. Вот такой надо было паять - http://ru.aliexpress.com/item/2-7v-supe ... 63093.html
Платы для HLDI - установки лазерной засветки фоторезиста.
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (4 цвета).
Первый раз сказал Мяу!
Сообщения: 33
Зарегистрирован: Пн сен 07, 2015 16:09:33

Сообщение Котище-транзисторище »

hybroid писал(а):
Cheburator писал(а):И тоже "по 0.1 микрофарад" ?
Исключительно по 100мкФ.
Hybroid, а вот это кто по-вашему писал?

smacorp писал(а):Маловато будет. Вот такой надо было паять - http://ru.aliexpress.com/item/2-7v-supe ... 63093.html
Ха-ха-ха-ха. Это какая будет искра при нажатии кнопки?
Если этот текст уменьшается - ваш монитор уносят.
Ответить

Вернуться в «AVR»