Страница 1 из 2

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

Добавлено: Пн сен 07, 2015 16:22:33
Котище-транзисторище
Помогите пожалуйста! Сделано устройство на микроконтроллере. На корпус выведено две кнопки, подключенные к разным пинам контроллера( tiny2313). Подтяжки к питанию по килоому на каждую кнопку. конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
После нескольких нажатий на кнопки, на семисегментном индикаторе, подключенном к контроллеру начинают отображаться кракозабры, он моргает и т.д.(этого в программе нет). Опрашиваю кнопки периодически, ожидая нажатия, а затем отпускания кнопки.
Помогите, а то замучался уже думать.http://radiokot.ru/forum/posting.php?mode=post&f=57#

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

Добавлено: Пн сен 07, 2015 18:27:12
Аlex
Ещё бы знать чем помочь.
В любом случае, проблема в программе. Даже если
Котище-транзисторище писал(а):этого в программе нет

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

Добавлено: Пн сен 07, 2015 18:37:09
Cheburator
Котище-транзисторище писал(а):конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
А это зачем? :shock:

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

Добавлено: Пн сен 07, 2015 18:47:02
hybroid
Это видимо часть интегрирующей цепи, для подавления дребезга. Ёмкость какая-то большая, но и подтяжка у него какая-то маленькая :dont_know:
Надо просить суперсекретную программу на показ..

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

Добавлено: Пн сен 07, 2015 19:06:52
Cheburator
hybroid писал(а):часть интегрирующей цепи, для подавления дребезга
Ну, так эту проблему проще программно решать. МК, однако... :write:

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

Добавлено: Пн сен 07, 2015 19:39:55
hybroid
На вкус и цвет.. Я вот тоже кондёры вешаю, уже машинально как-то.... МК может быть занят чем-то более полезным и "впритык".
К тому же, тема - ярый пример того, что не всё можно сразу решить программно :)))

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

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

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

Я тут еще попробовал впаять огромный кондер на 3300uF параллельно питанию. И стало немного лучше(глюки реже). :shock: :shock: :shock:
Это откуда? Как? Почему? если проблема в коде

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

Добавлено: Пн сен 07, 2015 20:07:35
ILYAUL
А я Free timer использую и тоже не парюсь с дребезгом

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

Добавлено: Пн сен 07, 2015 20:07:58
Cheburator
hybroid писал(а):Я вот тоже кондёры вешаю
И тоже "по 0.1 микрофарад" ?

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

Добавлено: Пн сен 07, 2015 20:14:46
Котище-транзисторище

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

if ((PIND & (1 << 0)) == 0)
{
    while((PIND & (1 << 0)) == 0);
    //Делаем то, что делаем.
}
Avr Studio.
Это вызывается в перерывах между динамической индикацией. Точно период не знаю, но часто.

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

Добавлено: Вт сен 08, 2015 01:29:17
Андрей СШ
Конденсатор не устраняет дребезг, а уменьшает его амплитуду, что для цифровой схемы малоэффективно. Но зато он при каждом нажатии поджигает контакты. Немного конечно, но это смотря сколько раз нажать на кнопку.

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

Добавлено: Вт сен 08, 2015 04:54:26
hybroid
Cheburator писал(а):И тоже "по 0.1 микрофарад" ?
Исключительно по 100мкФ.

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

Добавлено: Вт сен 08, 2015 05:13:21
Mishany
while и delay самое зло для использования в опросе кнопок....

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

Добавлено: Вт сен 08, 2015 07:18:35
Valek174
Mishany писал(а):while и delay самое зло для использования в опросе кнопок....
А какие еще есть варианты? Приведите пример пожалуйста.

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

Добавлено: Вт сен 08, 2015 08:07:27
DronVolk
Ага еще и в прерывании.

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

код писать не берусь так как не понятно какой компилятор используется.

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

Добавлено: Вт сен 08, 2015 13:29:49
Аlex
Valek174 писал(а):А какие еще есть варианты? Приведите пример пожалуйста.
http://radiokot.ru/forum/viewtopic.php?f=61&t=79801

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

Добавлено: Чт сен 10, 2015 18:59:42
Котище-транзисторище
Ура товарищи!
Проблему я решил подпаиванием банки на сто микрофарад параллельно кнопке и защитой от дребезга в коде(задержки и перепроверки).

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

Добавлено: Чт сен 10, 2015 20:56:36
hybroid
Котище-транзисторище писал(а):банки на сто микрофарад
Это пиздец. :facepalm: Уже на тыщу сразу..

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

Добавлено: Чт сен 10, 2015 21:02:26
smacorp
Котище-транзисторище писал(а):Проблему я решил подпаиванием банки на сто микрофарад параллельно кнопке
Маловато будет. Вот такой надо было паять - http://ru.aliexpress.com/item/2-7v-supe ... 63093.html

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

Добавлено: Чт сен 10, 2015 21:06:56
Котище-транзисторище
hybroid писал(а):
Cheburator писал(а):И тоже "по 0.1 микрофарад" ?
Исключительно по 100мкФ.
Hybroid, а вот это кто по-вашему писал?

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