Беспроводная клавиатура из ноутбучной

Все прочитали, вроде даже поняли, взяли паяльник - а нифига не получается? Скорее сюда! Поможем. Чем можем...
Ответить
Аватара пользователя
daaar
Держит паяльник хвостом
Сообщения: 920
Зарегистрирован: Пн июн 13, 2016 19:37:24
Откуда: Perm
Контактная информация:

Беспроводная клавиатура из ноутбучной

Сообщение daaar »

Хочу сделать беспроводную клавиатуру из ноутбучной. Сделал плату для отладки, мега32+NRF24L01. Столкнулся с такой проблемой: не все клавиши сканируются.
Сканирую матрицу вот так:
Спойлер

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

const int led = 2, matrix[] = { 1, 0, 24, 25, 26, 27, 28, 29, 30, 31, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8 };

bool readKey(){
  bool f = false;
  for(int i = 0; i < 26; i++){
    pinMode(matrix[i], OUTPUT);
    digitalWrite(matrix[i], LOW);
    for(int j = 0; j < 26; j++){
      if(i == j) continue;
      if(digitalRead(matrix[j]) == LOW) f = true;
    }
    pinMode(matrix[i], INPUT_PULLUP);
  }
  return f;
}

void setup() {
  pinMode(led, OUTPUT);
  for(int i = 0; i < 26; i++){
    pinMode(matrix[i], INPUT_PULLUP);
  }
}

void loop() {
  if(readKey()) digitalWrite(led, HIGH); else digitalWrite(led, LOW);
}
Большинство клавиш сканируются, но блоки f1-f12, доп блок цифр, ctrl, win, alt, space не сканируются. Но если нажать две клавиши например + и - то они отсканируются
Реклама
Аватара пользователя
Николай_С
Друг Кота
Сообщения: 6497
Зарегистрирован: Вт сен 25, 2012 23:13:41
Откуда: г.Дзержинск Нижегородской обл.
Контактная информация:

Re: Беспроводная клавиатура из ноутбучной

Сообщение Николай_С »

Вы бы не прогу без комментов выкладывали, а расписали бы алгоритм сканирования. Толку было бы больше. Да и аппаратную часть бы неплохо описать от начала и до конца. Любопытно, как Вы собираетесь питать МК с радиомодулем без провода? Как и куда передавать с него данные?
Спасение утопающих дело рук самих утопающих.
Реклама
Аватара пользователя
daaar
Держит паяльник хвостом
Сообщения: 920
Зарегистрирован: Пн июн 13, 2016 19:37:24
Откуда: Perm
Контактная информация:

Re: Беспроводная клавиатура из ноутбучной

Сообщение daaar »

[uquote="Николай_С",url="/forum/viewtopic.php?p=3883890#p3883890"]Вы бы не прогу без комментов выкладывали, а расписали бы алгоритм сканирования. Толку было бы больше.[/uquote]
Там коду 4 строчки. Радиомодуль пока не задействовал, сначала хочу разобраться с неработающими клавишами
Изображение
Аватара пользователя
Николай_С
Друг Кота
Сообщения: 6497
Зарегистрирован: Вт сен 25, 2012 23:13:41
Откуда: г.Дзержинск Нижегородской обл.
Контактная информация:

Re: Беспроводная клавиатура из ноутбучной

Сообщение Николай_С »

Ноутбучная клавиатура представляет из себя матрицу в узлах которой замыкаются кнопки. Необходимо организовать опрос "строк", подавая на "столбцы" импульсы, определённым образом сдвинутые во времени. Входы "строк" не должны просто так "висеть в воздухе", а д.б. притянуты к корпусу (или Uпит) резисторами 10-100 кОм. По крайней мере, так сделано в подавляющем большинстве мультиконтроллеров ноутбуков. Вы можете разработать свой собственный метод опроса кнопок, только учтите необходимость системы помехозащиты, антидребезга и мультиповтора.
Спасение утопающих дело рук самих утопающих.
Реклама
Эиком - электронные компоненты и радиодетали
Ответить

Вернуться в «Практика»