Страница 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 микрофарад.
А это зачем?

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

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

Re: Странные явления с кнопками
Добавлено: Пн сен 07, 2015 20:06:35
Котище-транзисторище
Котище-транзисторище писал(а):
конденсатор параллельно каждой кнопке есть по 0.1 микрофарад.
А это зачем?
Это подавление дребезга.
Ёмкость какая-то большая, но и подтяжка у него какая-то маленькая
А какая емкость и подтяжка должна быть?
Я тут еще попробовал впаять огромный кондер на 3300uF параллельно питанию. И стало немного лучше(глюки реже).
Это откуда? Как? Почему? если проблема в коде
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
Котище-транзисторище писал(а):банки на сто микрофарад
Это пиздец.

Уже на тыщу сразу..
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, а вот это кто по-вашему писал?
Ха-ха-ха-ха. Это какая будет искра при нажатии кнопки?