Ардуино как ISP с serial monitor для ATmega328

serial atmega328 arduinoisp

У меня есть ATmeg328 TQFP на плате (в системе). Я использую Arduino Uno в качестве ISP для программирования чипа. Однако я хотел бы использовать последовательную связь с чипом через плату Arduino.

  1. Возможно ли это?
  2. Если да, как я могу это реализовать?

EDIT: у меня недоступны контакты tx и RX. Чип находится на плате. Под платой Arduino я имею в виду, что для этого я хотел бы использовать контакты Miso Mosi sck.

, 👍1

Обсуждение

Что именно вы имеете в виду под «через плату Arduino»?, @Nick Gammon

Целевой чип подключен через ISP к Arduino Uno. Я хочу использовать последовательный монитор для отображения информации с целевого чипа, но единственное соединение чипа — через Arduino., @pritstift

Конечно, это возможно — вы можете легко встроить дополнительные функции в скетч Arduiono-as-ISP, чтобы обеспечить взаимодействие с прошивкой во время выполнения, потенциально включая мост между SPI и асинхронным последовательным портом. Но вам придется решить для себя, что именно требуется, и придумать какую-нибудь схему переключения интерфейса Arduino между режимом ISP и коммуникационным мостом., @Chris Stratton

Использование «кабеля FTDI» и загрузчика может быть немного проще. В худшем случае вы можете настроить Arduino так, чтобы он работал как кабель FTDI после того, как вы сожгли загрузчик., @Paul


3 ответа


1

Просто запишите загрузчик Arduino на свой tqfp. Затем подключите tx и rx на tqfp к tx и rx на вашем arduino и потяните линию сброса на arduino на низкий уровень.

Недостаток заключается в том, что перед программированием необходимо выполнить сброс tqfp вручную. Если у вас есть Uno, вы можете удалить atmega из розетки и подключить сброс на uno к сбросу на tqfp.

Другой вариант — подключить TX на tqfp к контакту TX на Arduino с помощью резистора. Но для того, чтобы это работало, вам нужно изменить скетч ArduinoISP, чтобы он освободил вывод TX (UCSRnB &= ~_BV(UCSRnB);) и установил его на вход. И переверните его, когда данные будут получены на RX. Не тривиально и работает только в одном направлении (tqfp на ПК).

,

Спасибо за ответ, но я не хочу использовать контакты tx и rx, @pritstift


0

В дополнение к моему предыдущему комментарию-предложению о том, что вы можете реализовать связь через SPI, добавив функциональные возможности как в скетч ISP, так и в целевую программу, теперь мне приходит в голову, что другим подходом было бы реализовать последовательные функции программного обеспечения на обоих, назначенных к некоторым контактам, используемым для ISP во время этого процесса.

,

0

как здесь? У Ника Гэммона есть набросок, который включает в себя ISP с последовательным управлением. Sketch доступен на GitHub здесь

,