Ошибка загрузки на плату, но я выбрал порт и тип платы?

У меня возникла проблема, когда я пытаюсь загрузить программу на плату. Я работаю над игрой Simon Says, и когда я впервые начал загружать ее, мой компьютер отлично с ней справился. Все работало корректно.

Однако теперь я добавил 3 светодиода для цветов и 3 кнопки. Я написал им программу для запуска игры, а потом пошел тестировать. Тогда мой Arduino издавал звуковой сигнал 3 раза, а затем в 75% случаев мой компьютер выдавал мне эту ошибку:

Проблема с загрузкой на плату. См. предложения по http://www.arduino.cc/en/Guide/Troubleshooting#upload.

В 25% случаев я получаю следующее:

Произошла ошибка при загрузке скетча

Может быть, мой проект становится слишком сложным для Arduino? Это мой код:

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

int s = 13; // Оратор
int r = 6;  // Красный светодиод
int y = 5;  // желтый светодиод
int g = 4;  // Зеленый светодиод
int b1 = 3; // Красная кнопка
int b2 = 2; // Желтая кнопка
int b3 = 1; // Зеленая кнопка — я не знаю, работает ли контакт 1.

void setup() {
  lcd.begin(16, 2);
  pinMode(s, OUTPUT);
  pinMode(r, OUTPUT);
  pinMode(y, OUTPUT);
  pinMode(g, OUTPUT);
  pinMode(b1, INPUT);
  pinMode(b2, INPUT);
  // pinMode(b3, INPUT); пин 1 работает?
}

void loop() {
  lcd.print("Press any button");
  lcd.setCursor(4, 1);
  lcd.print("to play!");
  while (true) {
    if (digitalRead(b1) == HIGH) {
      break;
    }
    delay(50);
  }
  lcd.clear();
  delay(1000);
  lcd.setCursor(1, 0);
  lcd.print("Simon's turn!");
  delay(1000);
  while (true) {
    // Пока я не хочу зацикливаться. Я закончу программу, когда эта проблема будет решена.
    delay(50);
  }
}

Кто-нибудь знает решение этой проблемы?

, 👍-1

Обсуждение

Что именно подключено к контакту 1?, @Majenko

Контакт 1 идет к кнопке, которая идет с зеленым светодиодом. Он может сказать, когда кнопка нажата. Я не знал, была ли проблема в этом, но когда я прокомментировал это, при загрузке все еще была ошибка (не в коде)., @Ben Stafford

Что-нибудь *кроме* кнопки? Какой-нибудь подтягивающий или подтягивающий резистор? Если вы *отключите все* от контакта 1, он снова начнет работать?, @Majenko

Позвольте мне попробовать это., @Ben Stafford

Хорошо, я удалил все с пина 1, попытался загрузить снова. К сожалению, все еще ошибка. Кроме кнопки там больше ничего нет. *Редактировать* Есть потенциометр, но он даже не подключается к контакту 1. Он предназначен для регулировки ЖК-дисплея., @Ben Stafford


2 ответа


1

Время от времени экспериментируйте с Arduino. Какой из них вы используете.

Отсоедините его и снова подключите. Если контакты D0 и D1 заняты, у вас могут возникнуть проблемы с загрузкой.

,

Я использую Уно. Я отключил и снова подключил, это ни на что не повлияло. Контакты D0 и D1 не заняты. Есть еще предложения?, @Ben Stafford

Что-то блокирует порт. Это не ошибка компилятора., @Luke Lozowski

Можете ли вы загрузить другие скрипты. Или это только на этом случается?, @Luke Lozowski

Это происходит только с этим, что странно. Я начал новый файл, и он работает нормально., @Ben Stafford

Привет, Бен. Извини. Я был немного занят. Я рад, что вы решили свою проблему, создав новый файл. Я работаю в ИТ-поддержке. Я также хотел бы знать, почему что-то вызывает проблемы. Может когда нибудь посмотрю. Извини. Просто сейчас очень занят своими проектами Arduino. Я могу столкнуться с подобной проблемой, и тогда я опубликую ответ здесь., @Luke Lozowski


0

Удалите все, что подключено к контактам Tx и Rx (коммуникационным контактам)

Попробуйте загрузить код, возможно, он сработает

,