Нажатие клавиши на клавиатуре.

Amilman
Offline
Зарегистрирован: 17.02.2020

Доброго времени суток.

На руках имеется Arduino UNO и потроха от USB клавиатуры с заранее припаянными выводами для замыкания кнопки пробел и только её. На обоих выводах от платы клавиатуры всегда 5в при замыкании их между собой срабатывает нажатие пробела. Как мне замкнуть эти выводы между собой с помощью Arduino без использования Реле?

P.S нажимать клавишу требуется в программе которая игнорирует виртуальное нажатие клавиш, а нажимать пробел самому как-то уже стало надоедать..

sadman41
Offline
Зарегистрирован: 19.10.2016

Ниче не понял, но поставь лучше оптрон.

Amilman
Offline
Зарегистрирован: 17.02.2020

Есть вот такие остатки от клавиатуры. Припаянные к ней провода при замыкании вызывают нажатие клавиши пробел в системе. Как мне не используя реле реализовать замыкание этих двух проводов.

rkit
Offline
Зарегистрирован: 23.11.2016

полевика хватит

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Amilman пишет:

 На обоих выводах от платы клавиатуры всегда 5в при замыкании их между собой срабатывает ...

Так не бывает. Посмотрите осциллографом что там на самом деле.

Amilman
Offline
Зарегистрирован: 17.02.2020

Каждый провод проверял мультиметром, сажая на землю. Сетка клавиатуры же строится по принципу запитки всех ячеек пятью вольтами через резисторы. Или я не прав?

sadman41
Offline
Зарегистрирован: 19.10.2016

Если там неизвестно когда полярность меняется, то, думаю лучше твердотельное мелкое или герконовое реле и не париться.

nik182
Offline
Зарегистрирован: 04.05.2015

Не прав. Там сканирование нескольких матриц. Есть входные, есть выходные выводы. Входные замыкать нет смысла, выходные - череваты волшебным дымом. Пример МС клавиатуры

https://www.analog.com/media/en/technical-documentation/data-sheets/ADP5587.pdf

 

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

для решения задачи без осциллографа нужны тестер, N-MOSFET логического уровня и килоомный резистор.

1. тестер показывает +5 на обоих. Это хорошо.

2. соединяем 0 питания и проводочки через резистор 1-2КОм. Тот провод, при подключении к земле которого стало что-то приходить с клавиатуры - тот нужно будет присоединить к стоку полевика, а другой - к истоку.

3. Управлять подачей +5 на затвор. Между затвором и истоком припаять резистор в 10К.

N-Mosfet берется со старой материнской платы, там их штук 6 обычно. Вот пример.

Затвор - левый, сток корпус и не припаянная пимпочка в центре ;), исток - правый.

(на плате, кроме полевиков в таком же корпусе есть регуляторы напряжения. Выпаяв нужно посмотреть в инете - а что же ты выпаял? ;))) )

Green
Offline
Зарегистрирован: 01.10.2015

Полевик не сгорит?)

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Green пишет:

Полевик не сгорит?)

Без горелки? - Нет. ;))

Amilman
Offline
Зарегистрирован: 17.02.2020

wdrakula пишет:

для решения задачи без осциллографа нужны тестер, N-MOSFET логического уровня и килоомный резистор.

1. тестер показывает +5 на обоих. Это хорошо.

2. соединяем 0 питания и проводочки через резистор 1-2КОм. Тот провод, при подключении к земле которого стало что-то приходить с клавиатуры - тот нужно будет присоединить к стоку полевика, а другой - к истоку.

3. Управлять подачей +5 на затвор. Между затвором и истоком припаять резистор в 10К.

N-Mosfet берется со старой материнской платы, там их штук 6 обычно. Вот пример.

Затвор - левый, сток корпус и не припаянная пимпочка в центре ;), исток - правый.

(на плате, кроме полевиков в таком же корпусе есть регуляторы напряжения. Выпаяв нужно посмотреть в инете - а что же ты выпаял? ;))) )

Спаял как вы предложили. При подаче 5 вольт на затвор от лабараторника, срабатывает и нажатие пробел.

Но если пытаюсь через Uno то ничего не срабатывает..

Накидал скетч:

const int KEY_S = 4;

void setup() {
  pinMode(KEY_S, OUTPUT);
  digitalWrite(KEY_S, LOW);
}

void loop() {
  digitalWrite(KEY_S, LOW);
  delay(1000);
  digitalWrite(KEY_S, HIGH);
  delay(1000);
}
                                                                 

Контакты от истока сажаю на GND вместе со вторым выводом от клавиатуры.

P.S Очень сильно протупил.. Сейчас все работает. Надо исток сажать на второй вывод без земли.

Спасибо вам большое, за подробное описание действий.