реклама на сайте
подробности

 
 
> Подключение клавиатуры, Не получается
SergeyM
сообщение Jun 15 2005, 17:09
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 68
Регистрация: 1-05-05
Из: Снежинск
Пользователь №: 4 654



Всем привет ;)
Решил усовершенствовать свой проект и добавить клаву 4х4. Прочел AVR240 вроде так называлась статья, но реализовывал используя ЖК а не светодиодный индикатор. К тому же клаву подключил к одному порту, ЖК к другому и програмно отправляю символ нажатой клавиши. Все вроде работает но не доконца :) символы выводятся но только по первому столбцу т.е. 7, 4, 1, С (это символы первого столбца в моей клаве). Пробовал по разному делать задержку для антидребезга, но чето никак. Вообще реализую так:
на порт выдаю 0xF0 и с помощью прерываний проверяю число на PIN если не равно 240, то значит нажали на кнопку и отправляюсь в функцию обработки нажатия:
[CODE]
KeyPress(void){
//delay_ms(20); пробовал ее везде пихать :)
switch (PINB) {
case 224: key = 0;
delay_ms(10);
break;
case 208: key = 4;
delay_ms(10);
break;
case 176: key = 8;
delay_ms(10);
break;
case 112: key =
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Miron
сообщение Jun 16 2005, 12:43
Сообщение #2


Частый гость
**

Группа: Validating
Сообщений: 149
Регистрация: 11-02-05
Из: Рязань
Пользователь №: 2 574



Я извеняюсь а как вы сделали клавиатуру?

Если это матрица 4х4 то перед чтением надо
сначала выбрать одну из строк, потом прочитать
данные с порта, пререключить строку снова прочитать и тд
естественно если нажатие на строке зафиксированно
отсчитать дребезг и снова проверить тот ли код прочитан
что и до фиксации нажатия. Естественно кнопки надо опрашивать
через какой нибудь временной интервал (можно прямо в пп прерывания
от таймера)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 12:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01332 секунд с 7
ELECTRONIX ©2004-2016