[an error occurred while processing this directive]
Какая должна быть задержка?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
MicroKot 15 ноября 2006 г. 22:53
|
|
|
|
Вопрос следующего характера. Избавляемся от дребезга кнопок.
Кварц - 1 МГЦ, то есть длительность импульса 1 мкс
После того как зафиксировали нажатие, необходимо выждать сколько то мкс, а потом заново проверить факт нажатия. Так вот вопрос, сколько нужно (желательно) выждать мкс для данной частоты кварцы?
Составить ответ
|||
Конференция
|||
Архив
Ответы
- В советских электронных часах - 0.1 с. — БУБУ (15.11.2006 23:28 195.131.84.204, пустое)
- Пример на 0.5 секунд. Уберёшь temp_1 - будет 25mS — SergUser (15.11.2006 23:28 159.148.14.4, 442 байт)
- 10..30 МИЛЛИсекунд, в зависимости от паршивости кнопок. Делай все в таймерном прерывании, сравнивая с предыдущим состоянием - две единицы - не нажато, 0/1 или 1/0 - дребезг, два нуля - нажато — =AVR= (15.11.2006 22:58 80.92.96.19, пустое)
- время зависит не от кварца, а от частоты тремора. Измерь период, увеличь раза в 2 - получишь результат. — =L.A.= (15.11.2006 22:56 213.134.214.10, пустое)
- Если нажимать кнопку пальцем, миллисекунда нормально будет. — scorpion (15.11.2006 22:54 91.76.14.65, пустое)
- Ответ: — MicroKot (15.11.2006 23:05 85.140.136.254, 130 байт)
- 5-10mS закладывай, сильно от кнопки зависит. Причем с возрастом они, как и люди, сильнее дребезжать начинают — albor (16.11.2006 14:58 195.131.185.181, пустое)
- Под — scorpion (15.11.2006 23:16 91.76.14.65, 137 байт)
- Во-первых, миллисекунды категорически мало - дребезг весь останется. Во-вторых, я же тебе все разжевал и в рот положил - читать лень было, что ли? --> — =AVR= (15.11.2006 23:15 80.92.96.19, пустое, ссылка)
- Ответ: — MicroKot (15.11.2006 23:19 85.140.136.254, 208 байт)
- В симуляторе посмотри скока цикл выполняется и вычисли число которое те надо загрузить. — PeterD (15.11.2006 23:27 87.117.169.236, пустое, ссылка)
- Нет проблем. Частота кварца какая? — =AVR= (15.11.2006 23:25 80.92.96.19, пустое)
- Ответ: — MicroKot (15.11.2006 23:25 85.140.136.254, 5 байт)
- Лови — =AVR= (16.11.2006 00:00 80.92.96.19, 428 байт)
- Ответ: — MicroKot (16.11.2006 00:10 85.141.155.234, 210 байт)
- Извини, после copy-paste не подправил - в нижней строчке не zl, а zh: sbci ZH,0. Константа XTAL просто для памятки, вместо zl и zh ассемблер подставит R30 и R31 соответственно, можешь сам подставить любые два регистра из R16..R31 — =AVR= (16.11.2006 00:19 80.92.96.19, 570 байт)
- Извини, после copy-paste не подправил - в нижней строчке не zl, а zh: sbci ZH,0. Константа XTAL просто для памятки, вместо zl и zh ассемблер подставит R30 и R31 соответственно, можешь сам подставить любые два регистра из R16..R31 — =AVR= (16.11.2006 00:14 80.92.96.19, пустое)
- Ответ: — MicroKot (16.11.2006 00:17 85.141.155.234, 147 байт)
- Ответ: — MicroKot (16.11.2006 00:02 85.141.155.234, 17 байт)
- Посчему нельзя? Какя на .. разница как задержку получить. На таймере даже более логично и правельно. — PeterD (15.11.2006 23:24 87.117.169.236, пустое)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание