Программирование AVR с помощью ISP

Я пытаюсь запрограммировать atmega с помощью arduino sketch, используя только ISP (пользователь Mac). Итак, я знаю, как записать загрузчик, а затем запрограммировать чип с помощью TX, RX. Но я хотел бы запрограммировать его непосредственно с помощью ISP, без загрузчика. Итак, я использую UNO в качестве программатора ISP и безуспешно пытаюсь запрограммировать микросхему на печатной плате:

  1. Я загружаю в UNO скетч ArduinoISP
  2. Подключите линии к целевой плате (целевая плата имеет atmega328, кристалл, конденсаторы, светодиод).
  3. Выберите плату "Arduino pro или pro mini" в Arduino IDE.
  4. Выберите программатор - "Arduino как ISP"
  5. Вначале я попытался загрузить загрузчик, чтобы посмотреть, все ли в порядке, он загрузил загруженный чип, так что я знаю, что соединения хорошие, и я готов к работе.

Теперь я пытаюсь просто загрузить скетч, используя ТО ЖЕ подключение к ISP, я ничего не трогал (!), Поэтому я открыл мигающий пример, нажал кнопку загрузки, и он просто не работает (не синхронизирован).

Опять же, теперь цель состоит в том, чтобы запрограммировать чип с помощью ISP напрямую, без загрузчика. Причина, по которой я загрузил его, заключается в том, чтобы убедиться, что все хорошо подключено.

Я не могу себе представить, как точно такая же конфигурация может загрузить чип, а позже не может загрузить скетч напрямую через ISP.

Что я здесь упускаю из виду? Разве вы не можете использовать Arduino IDE для загрузки скетча непосредственно в качестве программатора ISP?

, 👍4

Обсуждение

Я голосую за то, чтобы закрыть этот вопрос как не относящийся к теме, потому что он принадлежит Arduino stack exchange., @Nick Johnson

у меня есть один, и у меня такая же проблема!, @Curnelious

Согласен, это не по теме для EESE. Но, черт возьми, то, что вы делаете, конечно, должно быть возможно (запрограммируйте устройство только с помощью вашего скетча и без загрузчика), и тот факт, что вы можете записать только загрузчик, но не скетч *может* означать, что ваши электрические соединения в порядке, поэтому моим следующим предложением было бы подтвердить, что ваша цель аппаратное обеспечение на самом деле является Pro или Pro-Mini или очень совместимо с ним. Настройки предохранителей, конечно, варьируются от одной платформы к другой..., @Techydude

Загрузка загрузчика, вероятно, изменила настройки fuse. Попробуйте подключить кристалл к чипу., @Ignacio Vazquez-Abrams

Вы нажимаете "Файл> Загрузить с помощью программиста" для загрузки?, @Visual Micro

Эти сведения могут быть полезны, если вы еще этого не проверили: https://docs.arduino.cc/built-in-examples/arduino-isp/ArduinoISP/, @tepalia


1 ответ


1

Вероятно, вы использовали кнопку прямой загрузки, которая использует программирование Arduino по умолчанию с использованием RX TX, а не выбранного вами программатора.

Все проводки идеальны, вот почему вы смогли записать загрузчик.

Теперь вам просто нужно перейти в раздел Скетч -> Загрузить с помощью программатора.

,