Ложные срабатывания кнопки
- Войдите на сайт для отправки комментариев
Доброго времени суток
Возникла проблема при подключении геймпада PS2 к ArduinoUno: мной была собрана схема и написана программа, выводящая на экран (мониторинг порта) оповещения о нажатии различных кнопок. После запуска скетча на плате Arduino начинает мигать аппаратный вывод TX и считывать случайные сигналы, принимаемые за нажатия кнопок. Геймпад, при этом, подключен к схеме, но выключен.
- Значения (analogRead) ложных нажатий и контролируемых мной - одинаковы
- Триггера Шмидта в наличии нет
На PSB_RED ложные нажатия практически отсутствуют
На PSB_PINK нажатий больше
На схеме указана плата и приёмник сигнала (беспроводной геймпад)
Примечания:
1. Источник питания на схеме не показан - Arduino подключена к компьютеру
2. Код включает фрагменты управления шаговыми двигателями, прошу не обращать на это внимания, так как это не касается проблемы
#include <PS2X_lib.h>
#include <AccelStepper.h>
PS2X ps2x;
byte Type = 0;
byte vibrate = 0;
int RX=0,RY=0,LX=0,LY=0;
AccelStepper Stepper1(1,13,12);
const int fan = 9;
void setup(){
Serial.begin(9600);
pinMode(fan,OUTPUT);
Stepper1.setMaxSpeed(3000);
Stepper1.setAcceleration(13000);
ps2x.config_gamepad(3,6,5,7, true, true);
Type = ps2x.readType();
}
void loop(){
analogWrite(fan,255);
ps2x.read_gamepad(false, vibrate);
if(ps2x.NewButtonState()) {
if (ps2x.Button(PSB_RED)){
Serial.println(PSB_RED);
}
if (ps2x.Button(PSB_PINK)){
Serial.println(PSB_RED);
}
}
}

Может геймпад неисправен? Проверяли?
Как это можно проверить?
Во включенном состоянии реагирует на контролируемые нажатия кнопок - выводит оповещения в мониторинг порта, то есть, геймпад работает как нужно, но к моим нажатиям кнопок добавляются ложные.
Мне кажется, если проблема и есть, то она в приемнике сигнала. Возможно, она должна решаться как и дребезг - с помощью подтягивающего резистора, но я не знаю как его подключить и будет ли это правильным решением.
Поэтому жду мнения и советов :)
- Триггера Шмидта в наличии нет
Не?
Закажи с али 74hc14, копейки стоит...