Как получить свою схему (Arduino) Pro Micro, чтобы можно было программировать ее через GPIO вместо USB?

Я пока пробую этот проект. У меня есть схема Pro Micro, которая питается через GPIO от Raspberry Pi Zero, и я хочу отключить соединение micro USB и прошить его с помощью avr-программатора. и несколько булавок.

Как мне этого добиться? Кроме того, Pro Micro получает D+/D- от D+/D- падов Raspberry. Схема ниже для справки.

, 👍1

Обсуждение

Да, вы можете запрограммировать Pro Micro с помощью программатора., @Pararera

вы не можете подключить плату через контакты GPIO... они предназначены только для ввода/вывода, @jsotola

Если Micro подключен к PI через USB, вы можете использовать его для последовательной загрузки в Micro из PI с помощью avrdude., @Juraj

Хотелось бы понять, что вы хотите построить. У PI есть GPIO, так зачем подключать Micro?, @Juraj

Пожалуйста, объясните, что вы подразумеваете под этим: *"прошить его с помощью avr-программатора и нескольких контактов"*, и почему вы хотите это сделать., @per1234

К сожалению, m1gu3 не удосужился ответить на мой вопрос. Я думаю, что смогу дать полезный ответ. В последней версии avrdude 6.3.0-arduino14 от Arduino была добавлена опция программатора linuxspi. Это позволяет вам использовать RPi в качестве программатора интернет-провайдера. Общий обзор вы можете найти во второй половине https://learn.sparkfun.com/tutorials/raspberry-pi-stand-alone-programmer и еще несколько технических обсуждений по адресу: https://github.com/per1234/Arduino_Boards. /тянуть/1. В настоящее время это работает только при запуске от имени суперпользователя. Эта ошибка должна быть исправлена в следующем выпуске avrdude, после чего я выпущу пакет., @per1234

@per1234, спасибо, что ответил мне этим. На самом деле вся цель проекта — создать плату, совместимую с Arduino, на которой можно разместить матрицу кнопок, экран, батарею и Raspberry Pi, например PocketChip. Я хочу избежать использования этого конкретного USB для части Arduino, поскольку в блоке питания будет USB для зарядки. Надеюсь это ответит на твой вопрос., @m1gu3


3 ответа


Лучший ответ:

2

Добро пожаловать в arduino.stackexchange.
Вы можете запрограммировать свой ATmega32U4 как минимум двумя способами:
1. Используйте загрузчик Arduino и контакты D+/D-. Таким образом, вам не понадобится внешний программатор. Попробуйте поискать этап «Программирование ATmega32U4 с загрузчиком».
2. Используйте метод ISP (внутрисистемное программирование). В этом случае вы можете использовать свой avr-программатор. Для этого вам также потребуется доступ к PIN-кодам с именами Reset, MISO, MOSI, SCLK. См. эту ссылку или этот

Как всегда, самое важное — это техническое описание ATMega32U4. .

,

Круто, ссылки и все такое. Большое спасибо!, @m1gu3


0

Почему бы вам не купить дополнительную плату Pi Zero to USB? Вы можете положить пи сверху и подключить его к обычному USB-порту вашего компьютера.

На плате USB есть несколько контактов, которые подключаются к точкам пайки мини-USB, поэтому вы можете удалить все ненужные разъемы.

Другой вариант — припаять провод к пи и удлинить разъем кабелем.

Я не граф, если вы можете запрограммировать пи на его последовательные контакты. В конце концов, USB — это последовательное соединение. Поэтому я думаю, что это должно быть возможно

,

Привет, @DAM, твоя идея звучит очень выполнимой, но основная концепция этого проекта — иметь мобильный rPi, я хочу максимально упростить ее. Но спасибо за ваш вклад, возможно, мне тоже пригодятся некоторые из этих идей!, @m1gu3


0

Программист avr использует интерфейс ISP для программирования чипа. Для этого вам понадобятся контакты MOSI, MISO, SCK и Reset. Конечно, вам также необходимо подать питание на плату через Vcc и землю.

Я не уверен, можно ли сохранять соединение USB во время программирования через интернет-провайдера, но поскольку вы в любом случае хотите отключить это соединение, это не проблема для вас. Вы можете полностью отключить USB-соединение (без подключения D+ или D-).

Примечание: если вы программируете Arduino Micro через интернет-провайдера без записи загрузчика, вы больше не сможете использовать USB для программирования, пока не запишете загрузчик снова.

,

Звучит хорошо, поэтому в основном подойдет 4-контактный разъем с MOSI, MISO, SCK и RST. И да, я думаю, это обмен данными с RPI без USB-разъема. Извините, я не специалист в таких вопросах, спасибо!, @m1gu3

В зависимости от напряжения, на котором работает Micro, вам может понадобиться переключатель уровня, чтобы ничего не повредилось из-за слишком высокого напряжения., @chrisl