Arduino icsp для чего
Перейти к содержимому

Arduino icsp для чего

  • автор:

Для чего нужен разъем ISCP на плате ардуино UNO?

Описано назначение выводов ISCP на платах Arduino UNO, Nano и других подобных.

На самом деле ICSP — это просто повторение пинов 5V, GND, RESET, MISO, MOSI, SCK (в нумерации Arduino Uno это выводы 11-13). То есть на схеме платы эти выводы просто попарно соединены между собой: 11-MOSI, 12-MISO, 13-SCK.

Данные пины обычно используются для передачи данных через интерфейс SPI (Serial Peripheral Interface).

Распиновка ICSP:

В зависимости от ситуации бывает удобно пользоваться либо выводами 11-13, либо разъемом ICSP.

Я также часто использую разъем ICSP для подачи питания на ардуину (через выводы 5V, GND), поскольку остальные выводы обычно заняты чем-то ещё.

ICSP для прошивки

Кроме того, у разьема ISCP есть еще одно назначение. На самом деле это даже его основное назначение, хотя оно и редко используется в домашних условиях. Разьем ISCP используется для промышленного программирования основного микроконтроллера ATMEGA328P, т.е. через внешний программатор — в тех случаях, когда зашивать программу через USB-кабель неудобно, либо нецелесообразно. Собственно ISCP расшифровывается как in-circuit serial programming.

В домашних условиях для прошивки мы обычно используем USB . Для этого ардуина подключается к компьютеру, и какой-то дополнительный программатор не требуется (его роль играет чип CH340 либо вспомогательный МК ATMEGA16U2).

Подробнее про прошивку через ISCP читайте здесь:

Arduino Nano: распиновка, схема подключения и программирование

Плата Arduino Nano — аналог флагманской Uno в миниатюрном размере. На ней предусмотрено всё необходимое для удобной работы с микроконтроллером: 14 цифровых входов/выходов (6 из них могут использоваться в качестве ШИМ-выходов), 6 аналоговых входов, кварцевый резонатор на 16 МГц, разъём Mini-USB, разъём питания, разъём для внутрисхемного программирования (ICSP) и кнопка сброса.

Видеообзор

Подключение и настройка

Для запуска платформы скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.

При выборе платформы выбирайте Arduino Nano.

Если всё получилось — можете смело переходить к экспериментам.

Элементы платы

Микроконтроллер ATmega328P

Сердцем платформы Arduino Nano является 8-битный микроконтроллер семейства AVR — ATmega328P с тактовой частотой 16 МГц. Контроллер предоставляет 32 КБ Flash-памяти для хранения прошивки, 2 КБ оперативной памяти SRAM и 1 КБ энергонезависимой памяти EEPROM для хранения данных.

Микросхема FT232R

Микросхема FTDI FT232R обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера. При подключении к компьютеру Nano определяется как виртуальный COM-порт.

USB-UART преобразователь общается с микроконтроллером ATmega328P по интерфейсу UART через пины 0(RX) и 1(TX) . Рекомендуем не использовать эти контакты в своём проекте.

Светодиодная индикация

Имя светодиода Назначение
RX и TX Мигают при обмене данными между Arduino Nano и ПК.
L Пользовательский светодиод подключённый к 13 пину микроконтроллера. При высоком уровне светодиод включается, при низком – выключается.
ON Наличие питания на Arduino Nano.

Разъём Mini-USB

Разъём Mini-USB предназначен для прошивки платформы с помощью компьютера.

Регулятор напряжения 5 В

Линейный понижающий регулятор напряжения LM1117MPX-5.0 с выходом 5 вольт обеспечивает питание микроконтроллера ATmega328P и другой логики платформы. Максимальный выходной ток составляет 800 мА.

ICSP-разъём для ATmega328

ICSP-разъём предназначен для загрузки прошивки в микроконтроллер ATmega328 через программатор.

Также через контакты ICSP Nano общается с платами расширения по интерфейсу SPI.

Распиновка

Пины питания

VIN: Входной пин для подключения внешнего источника питания с напряжением в диапазоне от 7 до 12 вольт.

5V: Выходной пин от регулятора напряжения на плате с выходом 5 вольт и максимальных током 800 мА. Питать устройство через вывод 5V не рекомендуется — вы рискуете спалить плату.

3.3V: Выходной пин от стабилизатора микросхемы FT232R с выходом 3,3 вольта и максимальных током 50 мА. Питать устройство через вывод 3V3 не рекомендуется — вы рискуете спалить плату.

GND: Выводы земли.

AREF: Пин для подключения внешнего опорного напряжения АЦП относительно которого происходят аналоговые измерения при использовании функции analogReference() с параметром «EXTERNAL».

Порты ввода/вывода

Цифровые входы/выходы: пины 0 – 13
Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.

ШИМ: пины 3 , 5 , 6 , 9 , 10 и 11
Позволяет выводить аналоговые значения в виде ШИМ-сигнала. Разрядность ШИМ не меняется и установлена в 8 бит.

АЦП: пины A0 – A7
Позволяет представить аналоговое напряжение в цифровом виде. Разрядность АЦП не меняется и установлена в 10 бит. Диапазон входного напряжения от 0 до 5 В. При подаче большего напряжения — вы убьёте микроконтроллер.

TWI/I²C: пины A4(SDA) и A5(SCL)
Для общения с периферией по интерфейсу I²C. Для работы используйте библиотеку Wire.

SPI: пины 11(MOSI) , 12(MISO) , 13(SCK) и 10(SS)
Для общения с периферией по интерфейсу SPI. Для работы — используйте библиотеку SPI.

UART: пины 0(RX) и 1(TX)
Используется для коммуникации платы Arduino с компьютером или другими устройствами по последовательному интерфейсу. Выводы 0(RX) и 1(TX) соединены с соответствующими USB-UART преобразователя FT232R. Для работы с последовательным интерфейсом — используйте методы библиотеки Serial.

Адаптер ICSP для дальномера HC-SR04: руководство по использованию

Адаптер ICSP для дальномера HC-SR04 поможет подключить датчики расстояния HC-SR04 и Roborace HC-SR04 к контроллерам Arduino без макетных плат и проводов.

Подробности

Переходник выполнен в виде компактной платы размером всего 10,5×7,5 мм. С одной стороны платы расположен разъём PBS-4 для подключения дальномера с четырьмя контактами, например дальномер HC-SR04 или Roborace HC-SR04. А с другой стороны платы — разъём PBD-6 для коммуникации полученного сета с контроллерами через разъём ICSP, например Piranha Uno или Arduino Mega 2560.

Подключение и настройка

Адаптер ICSP для дальномера HC-SR04 — это соединительное звено между дальномером и контроллером. Для старта выполните следующие действия:

  1. Подключите адаптер к контроллеру.
  2. Подсоедините дальномер к адаптеру.
  3. Запомните пины подключения.

Подключение контроллера

Адаптер поддерживает все контроллеры с разъёмом ICSP (6 pin). Это могут быть любые платы Arduino и им подобные. Для примера возьмём контроллер Arduino Uno. Для старта просто установите адаптер ICSP сверху на разъём ICSP платы Arduino.

Converter ICSP to HC-SR04 Wiring 1

Подключение контроллера

Адаптер поддерживает все дальномеры HC-SR04 с четырьмя контактами, например дальномер HC-SR04 или Roborace HC-SR04. Для продолжения установите дальномер сверху на адаптер ICSP.

Converter ICSP to HC-SR04 Wiring 2

Пины подключения

Для коммуникации с контроллером дальномеры используют четыре контакта.

Контакт Функция
VCC Питание
TRIG Контакт отправки сигнала
ECHO Контакт приёма сигнала
GND Земля

Изначально ICSP-разъём служит для прошивки контроллеров через программатор или общению с модулями расширения по интерфейсу SPI. Пины питания VCC и GND на всех контроллерах выведены на ICSP-разъём одинаково, поэтому дальномер получает напряжение сразу после сборки схемы. А вот нумерация пинов управления, на которые нужно повесить ECHO и TRIG дальномера отличаются в зависимости от контроллера на плате.

Однако в ядре Arduino есть универсальные название пинов, которые можно использовать в коде, а при компиляции программа вычислит какая плата используется и подставит нужный пин автоматически.

Пин Uno Leonardo Mega Универсальная запись
TRIG 12 14 50 PIN_SPI_MISO
ECHO 11 16 51 PIN_SPI_MOSI

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

// Назначаем пины датчика расстояния constexpr uint8_t PIN_SENSOR_TRIG = PIN_SPI_MISO; constexpr uint8_t PIN_SENSOR_ECHO = PIN_SPI_MOSI;

Примеры кода для работы с дальномерами смотрите в соответствующих статьях по датчикам расстояния HC-SR04 или Roborace HC-SR04.

Габаритный чертёж

Converter ICSP to HC-SR04 Dimensions

Комплектация

  • 1× Адаптер ICSP для дальномера HC-SR04

Характеристики

  • Модель: Адаптер ICSP для дальномера HC-SR04
  • Совместимые контроллеры: платформы с разъёмом ICSP (6 pin)
  • Совместимые датчики: дальномеры HC-SR04 (4 pin)

Ресурсы

  • Адаптер ICSP для дальномера HC-SR04 в магазине
  • Дальномер HC-SR04 в магазине
  • Дальномер Roborace HC-SR04 HC-SR04 в магазине
  • Дальномер HC-SR04: руководство по использованию
  • Дальномер Roborace HC-SR04: руководство по использованию

Arduino nano распиновка

Arduino Nano — это небольшая и дружественная к макету плата с микроконтроллером. Плата разработанна итальянской компанией Arduino.cc на основе ATmega328p (Arduino Nano V3.x) / Atmega168 (Arduino Nano V2.x).

Описание пинов

У ардуино нано распиновка выполнена так, как показано на картинке ниже:

ардуино нано распиновка на русском языке

  • Vin. Это входное напряжение питания платы при использовании внешнего источника питания от 7 до 12 В.
  • 5V. Это регулируемое напряжение питания платы, которое используется для питания контроллера и других компонентов, размещенных на плате.
  • 3.3В. Это минимальное напряжение, генерируемое регулятором напряжения на плате.
  • GND. Это штыри заземления. На плате имеется несколько заземляющих контактов, которые могут быть соответствующим образом соединены, когда требуется более одного заземляющего контакта.
  • RST. Пин сброса, который сбрасывает плату. Это очень полезно, когда запущенная программа слишком сложна и зависает. Низкое значение на выводе сброса приведет к сбросу контроллера.
  • A0-A7. Аналоговые контакты. На плате есть 8 аналоговых контактов, помеченных как A0 — A7. Эти контакты используются для измерения аналогового напряжения в диапазоне от 0 до 5 В.
  • Rx,Tx. Эти контакты используются для последовательной связи, где Tx представляет передачу данных, в то время как Rx представляет приемник данных.
  • D13. Этот вывод используется для включения встроенного светодиода.
  • REF. Этот вывод используется в качестве опорного напряжения для входного напряжения.
  • ШИМ. Шесть контактов 3,5, 6, 9, 10, 11 могут использоваться для обеспечения 8-канального выхода ШИМ (широтно-импульсной модуляции). Это метод, используемый для получения аналоговых результатов с цифровыми источниками.
  • SPI. Четыре контакта 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) используются для SPI (последовательный периферийный интерфейс). SPI является интерфейсной шиной и в основном используется для передачи данных между микроконтроллерами и другими периферийными устройствами, такими как датчики, регистры и SD-карта.
  • Прерыватель. Контакты 2 и 3 используются как внешние прерывания, которые используются в случае чрезвычайной ситуации, когда нам нужно остановить основную программу и вызвать важные инструкции в этот момент. Основная программа возобновляется после вызова и выполнения инструкции прерывания.
  • I2C. Связь I2C разработана с использованием выводов A4 и A5, где A4 представляет собой линию последовательных данных (SDA), которая переносит данные, а A5 представляет собой последовательную линию синхронизации (SCL), которая является тактовым сигналом, генерируемым ведущим устройством, используемым для синхронизации данных между устройства на шине I2C.

Распиновка ICSP

ICSP (In Circuit Serial Programming) — это один из нескольких методов, доступных для программирования плат Arduino. Обычно для программирования платы Arduino используется программа загрузчика Arduino, но если загрузчик отсутствует или поврежден, вместо него можно использовать ICSP. ICSP можно использовать для восстановления отсутствующего или поврежденного загрузчика.

Arduino nano icsp распиновка

Каждый вывод ICSP обычно соединен с другим выводом Arduino с тем же именем или функцией. Например, MISO в ICSP Nano подключен к MISO / цифровому выводу D12, MOSI в ISCP подключен к MOSI / цифровому выводу D11, и так далее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *