Неожиданное изменение значения 2-го потенциометра

Я пытаюсь подключить 2 потенциометра (10 кОм) и передать их значение в программное обеспечение Hairless Midi (для моста Serial to Midi). Первый потенциометр работает нормально, но значение второго потенциометра продолжает меняться, и когда я вращаю ручку потенциометра Pot1, значение потенциометра Pot2 также меняется.

Я дважды пытался прочитать значение, но безуспешно....

Мой код:

void setup()
{
   Serial.begin(9600);      
}

void loop()
{
  analogRead(0);
   val = analogRead(0)/8;   // Разделите на 8, чтобы получить диапазон 0-127 для midi
   if (val > lastVal+1 or val < lastVal+1 ) 
   {
   MIDImessage(176,1,val);}        
   lastVal = val;

  analogRead(2);
   val2 = analogRead(2)/8;   // Разделите на 8, чтобы получить диапазон 0-127 для midi
   if (val2 > lastVal2 + 1 or val2 < lastVal2 + 1 )
   {
   MIDImessage(176,2,val2);}         // 176 = команда CC, 2 = какой элемент управления, val = значение, считанное с потенциометра 2
   lastVal2 = val2;

   //val3 = analogRead(2)/8; // Разделите на 8, чтобы получить диапазон 0-127 для midi
   //если (val3 != lastVal3)
   //{
   //MIDImessage(176,3,val3);} // 176 = команда CC, 3 = какой элемент управления, val = значение, считанное с потенциометра 3
   //lastVal3 = val3;

delay(100);
}

void MIDImessage(byte command, byte data1, byte data2) //передача значений через стандартную команду Midi
{
   Serial.write(command);
   Serial.write(data1);
   Serial.write(data2);
}

Подключен второй потенциометр к A0, который ранее был для потенциометра 1, и удален потенциометр 1

, 👍0

Обсуждение

Что произойдет, если поменять местами два горшка? Этот щит указывает на то, является ли это проблемой программного обеспечения или оборудования., @Gerben

Я пробовал менять местами потенциометры, менять номер входного контакта, но проблема все равно осталась..., @ronaldo

Какая у тебя схема? Может ты последовательно подключал горшки?, @Maximilian Gerhardt

Дайте мне 5 минут, я загружу свою схему..., @ronaldo

У вас должно быть что-то подобное, да? (http://i.stack.imgur.com/JrLxr.png), @Maximilian Gerhardt

Это моя схема, @ronaldo

У вас, должно быть, ошибка в схеме. На моем Arduino Nano и 2 потенциометрах все работает отлично. Смотрите скриншот https://i.stack.imgur.com/ZVzLR.png и код https://pastebin.com/Ww7JcBp0 и рисунок схемы https://i.stack.imgur.com/5zpN0.jpg, @Maximilian Gerhardt

Я подключил так же, как на изображении моей схемы, и ваша тоже, верно..., @ronaldo

Попробуйте добавить больше отладки. Вместо того, чтобы подключать последовательный порт к устройству MIDI, позвольте ему распечатать необработанные аналоговые значения Pot и «будут отправлены» байты MIDI на ваш ПК., @Maximilian Gerhardt

Еще одна вещь, которую я попробовал сделать, это удалить соединение потенциометра 1 с Arduino и подключить потенциометр 2 к выводу 0 Arduino, который ранее использовался для потенциометра 1. Так что здесь значения меняются автоматически...добавляю схему, @ronaldo

Давайте [продолжим это обсуждение в чате](https://chat.stackexchange.com/rooms/75060/discussion-between-ronaldo-and-maximilian-gerhardt)., @ronaldo

Также опубликовано на [форуме Arduino](http://forum.arduino.cc/index.php?topic=537241.0), @tttapa

@tttapa, это я разместил сообщение на форуме Arduino, там мне очень помогли, но я застрял на этом этапе, поэтому разместил его и здесь..., @ronaldo


1 ответ


1

Когда я общался с @Maxmilian Gerhardt, он предложил проверить напряжение на потенциометре 2. Когда я проверил, я увидел 0 вольт. Поэтому он предположил, что, возможно, есть неплотное соединение или что-то еще с платой.

Итак, это был обходной путь:

Спасибо за помощь @Maxmilian Gerhardt

,