Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

распиновка, схема подключения и программирование [Амперка / Вики]

Используйте платформу Arduino MKR Vidor 4000 для создания проектов IoT и умного дома. Плата может одновременно опрашивать различные датчики, передавать данные по беспроводным технологиям и выводить изображение с камер видеонаблюдения.

На управляющей плате стучит сразу три сердца:

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

  1. По умолчанию среда программирования настроена только на AVR-платы. Для работы с платформой MKR Vidor 4000 добавьте в менеджере плат поддержку платформ SAMD Boards.
  2. Выберите плату MKR Vidor 4000 в IDE:
  3. Выберите COM-порт в IDE:, где — номер текущего порта.
    1. WiFiNINA (Не старше версии 1.8.5)

Примеры работы

Рассмотрим несколько примеров программирования MKR Vidor 4000 на C++ через Arduino IDE.

Маячок

Для начала мигнём встроенным светодиодом на пине микроконтроллера ATSAMD21G18.

В текущем примере задействуем только один чип платы MKR Vidor 4000 — микроконтроллер ATSAMD21G18.

Код для Arduino
Blink.ino
// Даём имя встроенному светодиоду на 32 пине
constexpr uint8_t LED_ARDUINO_PIN = 32;
 
void setup() {
  // Настраиваем пин со светодиодом в режим выхода
  pinMode(LED_ARDUINO_PIN, OUTPUT);
}
 
void loop() {
  // Зажигаем светодиод
  digitalWrite(LED_ARDUINO_PIN, HIGH);
  // Ждём пол секунды
  delay(500);
  // Гасим светодиод 
  digitalWrite(LED_ARDUINO_PIN, LOW);
  // Ждём пол секунды
  delay(500);
}

После прошивки скетча светодиод начнёт мигать раз в секунду.

Маячок RGB

Встроенный светодиод имеет три кристалла:

  • Red на пине микроконтроллера ATSAMD21G18.

  • Green на пине модуля NINA-W102.

  • Blue на пине модуля NINA-W102.

В продолжении будем по очереди мигать каждым цветом. В текущем примере уже задействуем второй чип платы MKR Vidor 4000 — NINA-W102.

Код для Arduino
BlinRGB.ino
// Подключаем библиотеки для доступа к NINA-W102
#include <WiFiNINA.h>
#include <utility/wifi_drv.h>
 
// Даём имя встроенному светодиоду на 32 пине МК ATSAMD21G18
constexpr uint8_t LEDR_ATSAMD21G18_PIN = 32;
// Даём имена встроенным светодиодам на 25 и 26 пинах модуля NINA-W102
constexpr uint8_t LEDG_NINAW102_PIN = 26;
constexpr uint8_t LEDB_NINAW102_PIN = 25;
 
void setup() {
  // Настраиваем пины со светодиодом в режим выхода
  pinMode(LEDR_ATSAMD21G18_PIN, OUTPUT);
  WiFiDrv::pinMode(LEDG_NINAW102_PIN, OUTPUT);
  WiFiDrv::pinMode(LEDB_NINAW102_PIN, OUTPUT);
  // Гасим все светодиоды
  digitalWrite(LEDR_ATSAMD21G18_PIN, HIGH);
  WiFiDrv::digitalWrite(LEDG_NINAW102_PIN, HIGH);
  WiFiDrv::digitalWrite(LEDB_NINAW102_PIN, HIGH);
}
 
void loop() {
  // Зажигаем красный светодиод
  digitalWrite(LEDR_ATSAMD21G18_PIN, LOW);
  // Ждём пол секунды
  delay(500);
  // Гасим красный светодиод 
  digitalWrite(LEDR_ATSAMD21G18_PIN, HIGH);
  // Ждём пол секунды
  delay(500);
   // Зажигаем зелёный светодиод
  WiFiDrv::digitalWrite(LEDG_NINAW102_PIN, LOW);
  // Ждём пол секунды
  delay(500);
  // Гасим зелёный светодиод 
  WiFiDrv::digitalWrite(LEDG_NINAW102_PIN, HIGH);
  // Ждём пол секунды
  delay(500);
   // Зажигаем синий светодиод
  WiFiDrv::digitalWrite(LEDB_NINAW102_PIN, LOW);
  // Ждём пол секунды
  delay(500);
  // Гасим синий светодиод 
  WiFiDrv::digitalWrite(LEDB_NINAW102_PIN, HIGH);
  // Ждём пол секунды
  delay(500);
}

После прошивки скетча светодиод начнёт мигать по очереди красным, зелёным и синим цветом.

Вывод лого на HDMI-дисплей

Пришло время опробовать изюминку данной платформы, третий чип MKR Vidor 4000 — ПЛИС (FPGA) Intel Cyclone 10CL016. На самом деле чип уже прошит официальной прошивкой производителя, а нам даются готовые функции для демонстрации работы. В качестве примера выведем лого на HDMI-дисплей.

Что понадобится
Схема устройства

Код для Arduino
DrawLogo.ino
// Библиотеки для работы с графикой и вывода данных на HDMI
#include "VidorGraphics.h"
#include "Vidor_GFX.h"
 
// Создаём буфер для вывода данных
Vidor_GFX  vdgfx;
 
void setup() {
  // Открываем Serial-порт для мониторинга данных в консоли
  Serial.begin(9600);
  // Ожидаем открытия Serial-порта
  // Закомментируйте строку ниже, если не нужна отладка
  while (!Serial) {}
  // Инициализируем FPGA
  if (!FPGA.begin()) {
    Serial.println("Initialization failed!");
    while (1) {}
  } else {
    Serial.println("Initialization successfully!");
  }
  // Ждём пару секунд
  delay(2000);
  // Закрашиваем всю область буфера белым фоном
  vdgfx.
fillRect(0,0,640,480,vdgfx.White()); // Рисуем лого Arduino vdgfx.fillCircle(225,225,100 ,vdgfx.lightBlue()); vdgfx.fillCircle(415,225,100 ,vdgfx.lightBlue()); vdgfx.fillCircle(225,225,90 ,vdgfx.White()); vdgfx.fillCircle(415,225,90 ,vdgfx.White()); vdgfx.fillRect(175,220,100,10 ,vdgfx.lightBlue()); vdgfx.fillRect(365,220,100,10 ,vdgfx.lightBlue()); vdgfx.fillRect(410,175,10,100 ,vdgfx.lightBlue());   // Пишем текстовую строку vdgfx.text.setCursor(150,375); vdgfx.text.setAlpha(255); vdgfx.text.setSize(3); vdgfx.text.setColor(vdgfx.lightBlue()); vdgfx.println("ARDUINO"); vdgfx.text.setCursor(480,145); vdgfx.text.setSize(1); vdgfx.println("TM"); }   void loop() {   }

После прошивки на HDMI-мониторе отобразится приветственное лого.

Захват изображения с камеры на HDMI-дисплей

Что понадобится
Схема устройства

Код для Arduino
CameraVideoCapture.ino
// Библиотеки для работы с графикой и вывода данных на HDMI
#include "VidorGraphics. h"
#include "VidorCamera.h"
 
// Создаём объект для работы с камерой
VidorCamera vcam;
 
void setup() {
  // Открываем Serial-порт для мониторинга данных в консоли
  Serial.begin(9600);
  // Ожидаем открытия Serial-порта
  // Закомментируйте строку ниже, если не нужна отладка
  while (!Serial) {}
 
  // Инициализируем FPGA
  if (!FPGA.begin()) {
    Serial.println("Initialization failed!");
    while (1) {}
  } else {
    Serial.println("Initialization successfully!");
  }
 
  // Инициализируем камеру
  if (!vcam.begin()) {
    Serial.println("Camera failed");
    while (1) {}
  } else {
    Serial.println("Camera successfully!");
  }
 
  // Ожидаем пару секунд
  delay(2000);
  Serial.println("Power On");
 
}
 
void loop() {
  // Если в консоли пришла команда STOP,
  // то останавливаем захват изображения
  String res = Serial.readStringUntil('\n');
  if (res.indexOf("STOP") > 0) {
    vcam.end();
  }
}

После прошивки изображение с камеры начнёт транслироваться на HDMI-монитор.

Бегущая строка WS2812

Что понадобится
Схема устройства

Код для Arduino
PrintTextWS2812.ino
// Библиотека для работы с графикой
#include "VidorGraphics.h"
// Библиотека для светодиодов WS2812
#include "Vidor_NeoPixel.h"
 
// Создаём объект np класса Vidor_NeoPixel для работы с матрицей WS2812
Vidor_NeoPixel    np(8*8, A6);
// Создаём объект vdgfx класса Vidor_GFX для работы с матрицей WS2812
Vidor_GFX         vdgfx(np);
// Создаём объект matrix класса Vidor_GFXbuffer для работы с матрицей WS2812
Vidor_GFXbuffer   matrix(np, vdgfx, 64, 8, true);
 
void setup() {
  // Открываем Serial-порт для мониторинга данных в консоли
  Serial.begin(9600);
  // Ожидаем открытия Serial-порта
  // Закомментируйте строку ниже, если не нужна отладка
  while (!Serial) {}
 
  // Инициализируем FPGA
  if (!FPGA.begin()) {
    Serial.println("Initialization failed!");
    while (1) {}
  } else {
    Serial.println("Initialization successfully!");
  }
 
  // Инициализируем матрицу
  np.
begin(); matrix.begin();   // Очищаем матрицу for (int i = 0; i < 64; i++) { // Clear matrix np.setPixelColor(i, 0, 0, 0, 0); } np.show(); // Печатаем в буфер слово «Амперка» vdgfx.text.setColor(vdgfx.Red()); vdgfx.text.setCursor(0, 6); vdgfx.setFont(0); vdgfx.text.setSize(1); vdgfx.print("A"); np.show(); vdgfx.text.setColor(vdgfx.Blue()); vdgfx.print("m"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Green()); vdgfx.print("p"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Yellow()); vdgfx.print("e"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Purple()); vdgfx.print("r"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Brown()); vdgfx.print("k"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.White()); vdgfx.print("a"); // Выводим изображение из буфера на матрицу np.show(); // Скроллим изображение в виде бегущей строки // Если строка «бежит» в неверном направлении, // необходимо сделать фикс в библиотеке Vidor_GFX.
Подробности: // http://wiki.amperka.ru/products:arduino-mkr-vidor-4000 matrix.scroll(100); }   void loop() {   }

После прошивки на матрице WS2812 побежит радужная строка с надписью «Амперка».

Если строка «бежит» в неверном направлении, необходимо сделать фикс в библиотеке Vidor_GFX.

Смена направления бегущей строки
  1. Откройте текстовым редактором файл библиотеки:

  2. Найдите функцию:
    void Vidor_GFXbuffer::scroll(int delay) {
      privateScroll(NP_SEQ_FLG_START | NP_SEQ_FLG_BUF_LOOP | NP_SEQ_FLG_INV_LOOP, delay);
    }
  3. Замените строку:
    privateScroll(NP_SEQ_FLG_START | NP_SEQ_FLG_BUF_LOOP | NP_SEQ_FLG_INV_LOOP, delay);

    На строку:

    privateScroll(NP_SEQ_FLG_START | NP_SEQ_FLG_BUF_LOOP, delay);
  4. Сохраните изменения.

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

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

На плате MKR Vidor 4000 расположен микроконтроллер ATSAMD21G18 c вычислительном ядром ARM Cortex® M0 с тактовой частотой 48 МГц. Контроллер обладает двумя видами памяти:

  • 256 КБ Flash-памяти, которая предназначена для хранение программ и сопутствующих статичных ресурсов. Flash-память энергонезависимая: при выключении питания, данные не сотрутся.

  • 32 КБ RAM-памяти, которая предназначена для хранения временных данных, например переменных программы. RAM-память энергозависимая: при выключении питания, все данные сотрутся.

ПЛИС (FPGA) Cyclone 10LP

Изюминкой на плате выступает ПЛИС/FPGA (программируемая логическая интегральная схема) — Intel Cyclone 10CL016 с тактовой частотой до 200 МГц. Чип содержит:

  • 15408 логических элементов

  • 56 аппаратных умножителей

  • 504 КБ RAM-памяти.

Для штатной работы ПЛИС на плате распаяны дополнительный чипы памяти:

ПЛИС используются там, где софтверных возможностей микроконтроллера недостаточно. Например, для реализации аппаратных интерфейсов UART, QSPI, I²C, I²S, захвата с MIPI-камеры и транслирования видео через HDMI.

По умолчанию на плате MKR Vidor 4000 чип Cyclone 10LP прошит штатной прошивкой, функции которой доступны через микроконтроллер микроконтроллер ATSAMD21G18 и библиотеки Vidor Libraries.

MKR Vidor 4000 задумывался как удобная отправная точка для вашего первого путешествия в мир программируемых логических интегральных схем. Однако если вы уже общались с ПЛИС и не боитесь трудностей, можете воспользоваться программой Intel Quartus для создания своих произвольные аппаратных блоков.

Беспроводной модуль NINA-W102

За беспроводную передачу данных отвечает чип U-blox NINA-W102 со встроенным чипом ESP32 для обмена данными по воздуху в диапазоне 2,4 ГГц по Wi-Fi и Bluetooth. Для работы с модулем используйте библиотеку WiFiNINA.

Библиотека WiFiNINA работает с платой MKR Vidor 4000 до версии 1.8.5 включительно. Более поздние релизы пока не поддерживаются платформой. Будьте внимательны при установке библиотеки.

Крипточип ATECC508A

Криптографический сопроцессор Microchip ATECC508A интегрирует протокол безопасности ECDH (Elliptic Curve Diffie Hellman) в сверхзащищённый метод, обеспечивающий согласование ключей для шифрования / дешифрования, наряду с ECDSA (алгоритм цифровой подписи эллиптической кривой) для проверки подлинности с подписью для Интернета вещей (IoT), включая домашнюю автоматизацию, промышленные сети, медицинские услуги, аутентификацию аксессуаров и расходных материалов.

Порт micro-USB

Разъём USB Micro предназначен для прошивки и питания платформы. Для подключения к ПК понадобится кабель USB (A — Micro USB).

Кнопка сброса

Кнопка предназначена для ручного сброса прошивки — аналог кнопки обычного компьютера.

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

Имя светодиода Назначение
ON Индикатор питания платформы. При питании платформы от аккумулятора через не горит для экономии ёмкости батареи.
RGB Пользовательский RGB-светодиод с общим анодом.
Катод красного цвета выведен на пин микроконтроллера ATSAMD21G18.
Катод зелёного цвета выведен на пин беспроводного модуля NINA-W102.
Катод синего цвета выведен на пин беспроводного модуля NINA-W102.
При задании значения низкого уровня светодиоды включаются, при высоком — выключаются. Для управления зелёным и синим цветом в Arduino IDE используйте библиотеку WiFiNINA.

Порт micro-HDMI

Разъём MIPI-камеры

Разъём MIPI предназначен для подключения MIPI-камер на сенсоре OmniVision OV5647 к плате Vidor 4000, например Raspberry Pi Camera (Model D).

Понижающий преобразователь EZ6301QI

Комбинированный понижающий преобразователь напряжения EZ6301QI содержит в себе три отдельных модуля:

  1. Импульсный DC-DC-преобразователь с настроенным выходом 3,3 В. Максимальный выходной ток 1,5 А.

  2. Линейный LDO-преобразователь с настроенным выходом 2,5 В. Максимальный выходной ток 300 мА.

  3. Линейный LDO-преобразователь с настроенным выходом 1,2 В. Максимальный выходной ток 300 мА.

В итоге одного преобразователя EZ6301QI достаточно для питания всей логики MKR Vidor 4000.

Разъём аккумулятора

На плате расположен JST PH-разъём (2 pin) для подключения внешних литий-полимерных (Li-Pol) и литий-ионных (Li-Ion) аккумуляторов. При питании через разъём для аккумулятора светодиодный индикатор Power не горит для экономии расхода энергии.

Контроллер заряда BQ24195L

За состояние батареи отвечает умный контроллер BQ24195L, который:

  • Отслеживает напряжение и ток батареи в режиме источника энергии.

  • Контролирует напряжение и ток батареи в режиме зарядки.

Разъём I²C интерфейса

На плате предусмотрен JST SH-разъём (5 pin) для подключения дополнительных модулей по интерфейсу I²C с распиновкой:

Имя контакта Назначение
5V Питание модуля (+)
GND Питание модуля (−)
SDA Пин данных шины I²C
SCL Пин тактирования шины I²C
7 Пин ввода-вывода

Распиновка

Пины питания

  • 5V: Выходной пин. На вывод поступает напряжение 5 В при подключении платы через USB-порт. При питании платформы через пин VIN или разъём для внешнего аккумулятора на пине может быть напряжение в диапазоне от нуля до входного.
  • VIN: Входной пин для подключения внешнего источника напряжения в диапазоне от 5 до 6 вольт.

  • VCC: Выходной пин от преобразователя напряжения с выходом 3,3 вольта и максимальных током 1,5 А. В любом варианте питания платформы на пине будет присутствовать 3,3 вольта.
  • GND: Вывод земли.

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

Пина ввода/вывода

В отличие от большинства плат Arduino, родным напряжением MKR Vidor 4000 является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Более высокое напряжение может повредить микроконтроллер!

  • Пины общего назначения: 22 пина: 014 и A0A6
    Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 7 мА.

  • ШИМ: 12 пинов: 08, 10, A3 и A4
    Позволяет выводить аналоговые значения в виде ШИМ-сигнала из цифровых значений. По умолчанию разрядность ШИМ установлена в 10 бит, которую можно изменить на 8, 10 и 12 бит с помощью функции analogWriteResolution().
  • АЦП: 7 пинов; A0A6
    Позволяет представить аналоговое напряжение в виде цифровом виде. По умолчанию разрядность АЦП установлена в 10 бит, которую можно изменить на 8, 10 и 12 бит с помощью функции analogReadResolution(). Диапазон входного напряжения от 0 до 3,3 В, при подаче большего напряжения микроконтроллер может выйти из строя.
  • ЦАП: пин DAC/A0
    Позволяет выводить аналоговое напряжение из цифровых значений. Вывод может использоваться для создания аудио-выхода — для этого используйте библиотеку AudioZero.

Принципиальная схема

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

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

  • Модель: Arduino MKR Vidor 40000 (SKU ABX00022)

  • Чипы и периферийные устройства:

    • Микроконтроллер ATSAMD21G18

    • ПЛИС/FPGA Cyclone 10CL016

    • Беспроводной модуль NINA-W102

    • Крипто чип ATECC508A

    • RGB-светодиод

  • Входное напряжение питания:

    • Через USB: 5 В

    • Через пин Vin: 5 В

    • Через JST-разъём: 3,7–4,2 В

  • Напряжение логических уровней: 3,3 В

  • Контакты ввода-вывода: 22

  • Контакты с АЦП: 7

  • Разрядность АЦП: 8/10/12 бит (по умолчанию 10 бит)

  • Контакты с ЦАП: 1

  • Разрядность ЦАП: 10 бит

  • Контакты с ШИМ: 12

  • Разрядность ШИМ: 8/10/12 бит (по умолчанию 8 бит)

  • Аппаратные интерфейсы:

    • 1× UART

    • 1× I²C

    • 1× SPI

    • 1× I²S

  • Дополнительные интерфейсы: MIPI, micro-HDMI, MiniPCI-E

  • Габариты: 83×25 мм

ПЛИС/FPGA Cyclone 10CL016

  • Модуль: Intel Cyclone 10CL016

  • Логических элементов: 15408

  • Аппаратных умножителей: 56

  • SDRAM-память: 504 КБ

  • Тактовая частота: 48–200 МГц

  • Внешняя Flash-память: W25Q16DV на 2 МБ

  • Внешняя SDRAM-память: AS4C4M16SA на 8 МБ

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

  • Модель: Microchip ATSAMD21G18

  • Ядро: 32-битный ARM Cortex M0+

  • Тактовая частота: 48 МГц

  • Flash-память: 256 КБ

  • RAM-память: 32 КБ

Беспроводной модуль NINA-W102

  • Модель: U-blox NINA-W102

  • Процессор: 2× Tensilica Xtensa LX6 (ESP32)

  • Тактовая частота: до 240 МГц

  • Flash-память: 2 МБ

  • ROM-память: 448 КБ

  • SRAM-память: 520 КБ

  • Частотный диапазон связи: 2,4 ГГц

  • Стандарт Wi-Fi: 802. 11b/g/n

  • Стандарт Bluetooth: BLE v4.2 BR/EDR

  • Встроенная антенна: планарная F-образная (PIFA)

Ресурсы

Полезные статьи

Библиотеки

Документация

MKR Vidor 4000: первая плата Arduino с FPGA

После длительного перерыва из-за юридических споров, за последние недели были представлены несколько новых материнских плат Arduino. Чуть больше двух недель назад вышли Arduino MKR WiFi 1010 with WiFi и MKR NB 1500. Обе платы поддерживают модули ublox, а габариты 61,5 × 25 мм идентичны первым моделям Arduino, они ориентированы на маломощные устройства IoT.

Несколько дней назад появился еще один продукт, который привлек внимание из-за использования FPGA от Intel.

Новая плата Arduino MKR Vidor 4000 оснащена тремя процессорами. Центральный компонент Microchip SAMD21 поддерживается Intel Cyclone 10 FPGA, модулем ublox NINA-W102 и чипом ESP32, который отвечает за беспроводные технологии WLAN и Bluetooth. Также интегрирован сопроцессор шифрования Microchip ATECC508A.

Идея за сочетанием Cyclone 10 FPGA и SAMD21 следующая: код программы работает на SAMD21, а FPGA рассматривается в качестве периферийного устройства, которое можно перепрограммировать. Таким образом, FPGA может работать в качестве UART, (Q)SPI, PWM с высоким разрешением или частотой, I2C, I2S или сигма-дельта ЦАП.

С MKR Vidor 4000 разработчики планируют облегчить доступ инноваторов к FPGA, будь то Verilog, VHDL или Toolchain от Altera/Intel.

“The new MKR Vidor 4000 will finally make FPGA accessible to makers and innovators,” сказал Массимо Банзи (Massimo Banzi), сооснователь Arduino. “And we are looking forward to changing the game yet again.

[…]

With this new product we aim at putting in the hands of professionals, makers and educators the electronic equivalent of a resourceful Swiss Knife to bring their creativity to the next level. The applications are countless.”

MKR Vidor 4000 будет доступен с конца июня. Информации о цене пока нет.

Arduino Uno WiFi

Второй новый продукт – Arduino Uno WiFi. Плата построена на ATmega4809 с 6 кбайт ОЗУ, 48 кбайт флэш-памяти, тремя UARTS, CIP (Core Independent Peripherals) и встроенным скоростным АЦП. Также используется крипточип Microchip ECC608.

Arduino Uno WiFi также появится в продаже в конце июня, цена неизвестна.

ARDUINO ОБЪЯВЛЯЕТ О ВЫХОДЕ НОВЫХ ПЛАТ MKR VIDOR 4000 И ОДНОГО WI-FI REV 2 – ОПОРНЫЕ ПЛИТЫ

В семействе Arduino появилось два новых члена, которые помогают разработчикам более эффективно реализовывать свои проекты. Это новые платы разработки MKR Vidor 4000 и Uno WiFi Rev 2 .

MKR Vidor 4000 и Uno WiFi Rev 2 – новые разработки Arduino

MKR Vidor 4000 – первая модель Arduino, основанная на микросхеме FPGA, которая оснащена микроконтроллером SAM D21, модулем Wi-Fi Nina W102 u-blox и криптографическим чипом ECC508, который отвечает за обеспечение безопасного подключения к сетям. местный и интернет. Эта плата MKR Vidor 4000 предназначена для широкого спектра приложений IoT с ее отличительным форм-фактором и значительной вычислительной мощностью для достижения высокой производительности при сохранении очень низкого энергопотребления. Все это будет сочетаться с инновационной средой разработки с целью демократизации и значительного упрощения доступа к миру ПЛИС для всех пользователей .

Мы рекомендуем прочитать наше сообщение об объявленном Raspberry Pi 3 B + с лучшей связью и большей мощностью

Второй – Uno Uno Rev 2, который был разработан совместно с Microchip и основан на новом чипе ATmega4809, модуле Wi-Fi Nina W102 u-blox и интегрированном IMU . Благодаря Wi-Fi-соединению это идеальное устройство для развивающихся отраслей IoT, таких как автомобильная промышленность, сельское хозяйство, бытовая электроника, умный дом и портативные устройства, которым требуется этот тип подключения с высокой эффективностью и форм-фактором. из Ардуино. Чип ATmega4809 предлагает не менее 6 КБ ОЗУ, 48 КБ флэш-памяти, три UARTS, независимые от ядра периферийные устройства (CIP) и встроенный высокоскоростной АЦП .

Этот микроконтроллер также обеспечивает аппаратную защиту для подключения проектов к облаку, включая AWS и Google .

Шрифт Techpowerup

Arduino MKR Vidor 4000 – Oomipood

Arduino MKR Vidor 4000 — это первая плата семейства Arduino на базе программируемой логической интегральной схемы (она же ПЛИС, она же FPGA).

Обычные процессоры весьма универсальны, но у них фиксированная архитектура, и для выполнения разных задач мы лишь меняем исполняемый программный код. В определённый момент всё упирается в возможности процессора, и нам уже не удастся заставить программу работать быстрее. В случае с ПЛИС (FPGA) у нас появляется возможность перестраивать архитектуру микросхемы на аппаратном уровне, словно конструктор, чтобы как можно лучше заточить её под определённый алгоритм — примерно как это делается в специализированных GPU и DSP-процессорах. Таким образом, в некоторых задачах ПЛИС в разы обгоняют типовые решения: например, при выполнении цифровой обработки сигнала или эмуляции работы другого устройства.

Arduino MKR Vidor 4000 открывает вашим проектам новые возможности: передавайте изображение с MIPI-камер на сенсоре OV5647 на HDMI-дисплей, накладывайте на него свою графику, прикручивайте распознавание QR-кодов или превратите сборку в инкрементальный энкодер — цифровой датчик угла поворота для оценки скорости вращения. Эти задачи нетривиальны для базовой Arduino MKR, но легко решаются на Vidor 4000 с помощью FPGA и готовых библиотек Arduino IDE.

При этом плата сохранила микроконтроллер ATSAMD21G18 и беспроводной модуль NINA-W102, что делает её подходящим выбором для создания проектов IoT и умного дома, где нужно опрашивать различные датчики и выводить изображение с камер видеонаблюдения.

Чипы: ATSAMD21G18, Cyclone 10CL016 и NINA-W102

Пинов ввода-вывода: 22

Напряжение логических уровней: 3,3 В

Максимальный ток с пина или на пин: 7 мА

Максимальный выходной ток пина 3V3: 1,5 A

Входное напряжение через пин Vin: 5–6 В

Входное напряжение через разъём для аккумулятора: 3,7 В

Габариты: 83×25 мм

FPGA Intel Cyclone 10CL016

Логических элементов: 15408

Аппаратных умножителей: 56

SDRAM-память: 504 КБ

Тактовая частота: до 150 МГц

Внешняя Flash-память: W25Q16DV на 2 МБ

Внешняя SDRAM-память: AS4C4M16SA на 8 МБ

Микроконтроллер Microchip ATSAMD21G18

Ядро: 32-битный ARM Cortex M0+

Тактовая частота: 48 МГц

Flash-память: 256 КБ

SRAM-память: 32 КБ

Контактов с АЦП: 7

Разрядность АЦП: 8/10/12 бит (по умолчанию 10 бит)

Контактов с ЦАП: 1

Разрядность ЦАП: 10 бит

Контактов с ШИМ: 12

Разрядность ШИМ: 8/10/12 бит (по умолчанию 8 бит)

Пинов с прерываниями: 12

Аппаратных интерфейсов SPI: 1

Аппаратных интерфейсов I2C / TWI: 1

Аппаратных интерфейсов UART / Serial: 1

Беспроводной модуль U-blox NINA-W102

Тактовая частота: до 240 МГц

Частота беспроводной передачи: 2,4 ГГц

Стандарт Wi-Fi: 802. 11b/g/n

Стандарт Bluetooth: BLE v4.2 BR/EDR

Flash-память: 2 МБ

ROM-память: 448 КБ

SRAM-память: 520 КБ

Arduino MKR Vidor 4000 / ABX00022, цена 2170 грн

Arduino MKR Vidor 4000 позволит вам реализовывать проекты с высоким быстродействием и быстрой обработкой данных благодаря прекрасному сочетанию микроконтроллера ARM и микросхемы FPGA. Контроллер MKR Vidor 4000 содержит такие ресурсы платы: 8 MB SDRAM оперативной памяти, 2 MB QSPI флеш памяти, 1 Мб из которой предоставлен для пользователя, разъём Micro HDMI для подключения монитора или телевизора, разъём MIPI для подключения видеокамеры и мощный интерфейс беспроводных подключений Wifi и BLE предоставляемый модулем U-BLOX NINA W10. Также плата имеет интерфейс MKR, на разъемы которого были выведены контакты микроконтроллера SAMD21 и FPGA.  И вдобавок есть Mini PCI Express разъем с 25 пользовательскими программируемыми выводами. 

FPGA на плате контроллера содержит 16K логических элементов, 504 КБ встроенной оперативной памяти, и 56 аппаратных умножителей 18×18 разрядов для высокоскоростных DSP вычислений. Каждый вывод FPGA может работать с частотой более 150МГц и может быть сконфигурирован для таких функций как UART, (Q)SPI, высокочастотный ШИМ, интерфейс I2C и т.д.

 

Основные особенности:

  • Cortex-M0 32-битный SAMD21. Мощный процессор с низким энергопотреблением, который используется во всех платах семейства MKR.
  • u-blox NINA-W102. Обеспечивает подключение по Bluetooth и Wi-Fi для платы MKR WiFi 1010.
  • Криптографический чип ATECC508. Криптографический чип ECC508 обеспечивает безопасность и конфиденциальность ваших данных и может хранить до 16 ключей в массиве EEPROM.
  • Intel® Cyclone® 10CL016. С общим количеством логических элементов 16K, 504kb встроенной RAM, каждый из его контактов может быть настроен по своему усмотрению: I2C, SPI, UART, PWM и многое другое.
  • Разъем Micro HDMI для подключения к плате внешнего монитора.

  • Разъем камеры MIPI. Подключите камеру и просматривайте результат на внешнем мониторе или используйте его для распознавания QR!

 

Внимание!

  1. Микроконтроллер на этой плате работает на уровне напряжения 3,3 В. При подключении датчиков и исполнительных механизмов необходимо соблюдать осторожность, чтобы гарантировать, что этот предел в 3,3 В никогда не будет превышен. Подключение сигналов более высокого напряжения, таких как 5 В, обычно используемое с другими платами Arduino, приведет к повреждению платы.
  2. Перед использованием необходимо удалить черную токопроводящую пену с контактов платы. Если вы не удалите его, плата может работать нестабильно.

 

 

Технические характеристики:

Блок FPGA:

Программируемая пользователем вентильная матрица FPGA
(англ. field-programmable gate array)
Intel Cyclone 10CL016
  Mini PCI Express порт с программируемыми пинами
Разъём камеры MIPI camera connector
Рабочее напряжение 3.3V
Цифровых разъёмов ввода/вывода 22 на разъёмах + 25 Mini PCI Express
ШИМ каналов все пины
UART до 7 (в зависимости от конфигурации FPGA)
SPI до 7 (в зависимости от конфигурации FPGA)
I2C до 7 (в зависимости от конфигурации FPGA)
Аналоговых каналов на вход n/a
Аналоговых каналов на выход n/a
Внешних прерывателей n/a
Предельное значение постоянного тока на 1 выходной пин 4 или 8 mA
Flash память 2 MB
SDRAM 8 MB
EEPROM n/a
Частота 48 MHz – up to 200 MHz
Выход видео Micro HDMI

 

Блок микроконтроллера:

Микроконтроллер Microchip ATSAMD21 (Arm Cortex-M0+ processor)
Wi-Fi U-blox Nina-W102
Входное напряжение 5V
Поддержка работы от аккумуляторной батареи Li-Po Single Cell, 3. 7V, 700mAh Minimum
Рабочее напряжение схемы 3.3V
Цифровых разъёмов ввода/вывода 22
ШИМ каналов 12 (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, A3 – or 18 -, A4 -or 19)
UART 1
SPI 1
I2C 1
Аналоговых каналов на вход 7 (ADC 8/10/12 bit)
Аналоговых каналов на выход 1 (DAC 10 bit)
Внешних прерывателей 8 (0, 1, 4, 5, 6, 7, 8, A1 -or 16-, A2 – or 17)
Flash память 256 KB
SRAM 32 KB
EEPROM No
Частота 32.768 kHz (RTC), 48 MHz
Встроенне пины для светодиодов 6
Полноскоростное USB-устройство и встроенный хост есть

 

Назначание пинов платы:

 

Габаритные размеры:  83мм х 25мм

 

Вес: 0. 032 кг

Arduino MKR Vidor 4000 – Официальный магазин Arduino

Arduino MKR Vidor 4000 обеспечивает простоту использования Arduino для работы с самыми мощными из существующих перепрограммируемых микросхем: ПЛИС. С Vidor вы можете создать плату, на которой все контакты являются сигналами ШИМ, контролирующими скорость двигателей. Вы можете записывать звук в реальном времени и создавать звуковые эффекты для своей гитары. Можно создать компьютер, который в режиме реального времени считывает информацию с датчика и отправляет ее на современный монитор или снимает видео и накладывает информацию датчика на изображение, которое затем будет отправлено на экран.Вы можете подключиться к Arduino IoT Cloud и управлять сложной лабораторной машиной с большим количеством двигателей. Вы даже можете создать прототип собственных процессоров внутри FPGA и заставить его работать параллельно с другим микроконтроллером на плате. Vidor – это устройство, которое приглашает к экспериментам, точности и высокоскоростным вычислениям.

Посмотрите, что Массимо Банци, соучредитель Arduino, говорит об этой плате в следующем видео.

Главный чип на плате – Intel® Cyclone® 10CL016; он содержит 16 КБ логических элементов, 504 КБ встроенной ОЗУ и 56 аппаратных умножителей 18×18 бит для высокоскоростных операций DSP.Каждый вывод может переключаться на частоте более 150 МГц и может быть настроен для таких функций, как UART, (Q) SPI, ШИМ высокого разрешения / высокой частоты, квадратурный энкодер, I2C, I2S, сигма-дельта-ЦАП и т. Д.

Плата поставляется с 8 МБ SRAM для поддержки операций FPGA с видео и аудио. Код FPGA хранится в микросхеме QSPI Flash емкостью 2 МБ, из которых 1 МБ выделен для пользовательских приложений. Возможно выполнение высокоскоростных операций DSP для обработки аудио и видео. Поэтому Vidor включает в себя разъем Micro HDMI для вывода звука и видео, а также разъем камеры MIPI для ввода видео. Все контакты платы управляются как SAMD21, так и FPGA, соблюдая формат семейства MKR. Наконец, имеется разъем Mini PCI Express с максимум 25 программируемыми пользователем контактами, который можно использовать для подключения FPGA в качестве периферийного устройства к компьютеру или для создания собственных интерфейсов PCI.

Микроконтроллер платы представляет собой 32-битный SAMD21 Arm® Cortex®-M0 с низким энергопотреблением, как и в других платах семейства Arduino MKR. Связь по Wi-Fi и Bluetooth® осуществляется с помощью модуля от u-blox, NINA-W10, чипсета с низким энергопотреблением, работающего в 2.Диапазон 4GHz. Кроме того, безопасная связь обеспечивается криптографическим чипом Microchip® ECC508. Кроме того, вы можете найти на борту зарядное устройство и направляемый светодиод RGB.

Просмотрите все разъемы платы на следующем изображении:

Мощность ПЛИС

Если вы не знакомы с этим термином, ПЛИС – это программируемая вентильная матрица, микросхема, в которой логика, управляющая ее операциями, не записана во время производства. Можно написать свой собственный ЦП, серию выделенных высокочастотных ШИМ-выходов, цифровой звуковой микшер, устройство наложения видео или все, что вы можете себе представить.Основное ограничение – количество логических вентилей, необходимых для разработки любого из этих приложений.

В качестве примера того, как такой мощный процессор может быть интегрирован в ваш типичный рабочий процесс Arduino, мы создали серию библиотек, которые могут выполнять некоторые простые задачи, включая микроконтроллер и специализированный код FPGA. См. Следующие примеры, чтобы увидеть, как это работает:

  • Нарисуйте логотип Arduino: узнайте, как использовать библиотеку VidorGraphics для вывода видеосигнала на монитор через разъем HDMI.Проверьте код здесь.
  • Включить камеру: получить видеосигнал с камеры и отправить его на монитор компьютера. См. Пример здесь.

Если вы опытный разработчик FPGA, вы будете рады узнать, что мы выпустили серию библиотек, обеспечивающих многие из основных функций, необходимых для ваших проектов. Вы можете проверить эту группу репозиториев Github, содержащих весь созданный нами код Vidor с открытым исходным кодом.

WiFi и Arduino IoT Cloud

В Arduino мы сделали подключение к сети Wi-Fi таким же простым, как мигание светодиода.Вы можете подключить свою плату к любой существующей сети Wi-Fi или использовать ее для создания собственной точки доступа Arduino. Конкретный набор примеров, которые мы предоставляем для MKR Vidor 4000, можно найти на справочной странице библиотеки WiFiNINA.

Bluetooth® и BLE

Коммуникационный набор микросхем MKR Vidor 4000 может быть как клиентом, так и хост-устройством BLE и Bluetooth®. Что-то довольно уникальное в мире платформ микроконтроллеров. Если вы хотите увидеть, насколько просто создать центральное или периферийное устройство Bluetooth®, изучите примеры в нашей библиотеке ArduinoBLE.

Мы открываем для вас возможность взламывать

MKR Vidor 4000 – это многопроцессорное устройство, которое приглашает к экспериментам. Взлом модуля WiFiNINA позволяет, например, одновременно использовать на плате как WiFi, так и BLE / Bluetooth®. Еще одна возможность – иметь сверхлегкую версию Linux, работающую на модуле, в то время как основной микроконтроллер управляет устройствами низкого уровня, такими как двигатели или экраны. Эти экспериментальные методы требуют продвинутого взлома с вашей стороны.Это возможно путем модификации прошивки модуля, которую вы можете найти в наших репозиториях на github.

ОСТОРОЖНО: этот вид взлома нарушает сертификацию вашего модуля WiFiNINA, делайте это на свой страх и риск.

Питание от аккумулятора

Его USB-порт может использоваться для подачи питания (5 В) на плату. Он имеет схему зарядки Li-Po, которая позволяет Arduino MKR Vidor 4000 работать от батареи или внешнего источника 5 В, заряжая батарею Li-Po при работе от внешнего источника питания.Переключение с одного источника на другой происходит автоматически.

Начало работы

Раздел «Начало работы» содержит всю информацию, необходимую для настройки платы, использования программного обеспечения Arduino (IDE) и начала возиться с кодированием и электроникой. Если вы хотите узнать больше о программировании VHDL, низкоуровневого языка, используемого для написания параллельного кода, который будет выполняться на FPGA, проверьте эту справочную страницу.

В настоящее время вам необходимо сгенерировать код ПЛИС с помощью внешнего программного обеспечения.В следующих руководствах, разработанных членом сообщества Arduino Дэниелом Герцем, объясняется, как создать код FPGA с помощью инструмента разработки Intel® Quartus®:

  • Начало работы с ПЛИС с использованием Arduino MKR Vidor 4000: прочтите введение здесь.
  • Как программировать ПЛИС Arduino MKR Vidor 4000 с помощью Quartus IDE: ознакомьтесь с руководством здесь.

Нужна помощь?

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

Гарантия

Здесь вы можете найти информацию о гарантии на вашу плату.

Arduino MKR Vidor 4000 Практическое руководство

Ранее на этой неделе я посмотрел на Arduino MKR Vidor 4000 во время прямой трансляции AddOhms. Моей целью было лучше понять Видор. Это новый Arduino на базе FPGA, поставки которого начались в этом месяце. Он стоит около 60 долларов.Вы можете узнать больше на странице продукта Vidor на веб-сайте Arduino.

В этом посте я кратко коснусь разницы между ПЛИС и микроконтроллером. Затем я провожу вас по доске MKR Vidor 4000. Используя один из примеров, я немного расскажу о том, как различные микросхемы взаимодействуют друг с другом. В этом разделе также рассказывается, что отличает плату Arduino FPGA от других плат для разработки. Наконец, я отвечаю: «Стоит ли покупать Arduino MKR Vidor 4000?»

Оригинальный прямой эфир

Прежде чем начать, я должен упомянуть, что у меня нет внутренней информации об этом продукте. Я задал несколько вопросов на выставке Bay Area Maker Faire 2018, но на этом все. Все в этом посте – это то, что я узнал из самопознания. Большая часть исследований для этого поста проводилась между прямой трансляцией и последующей работой, которую я сделал. Дайте мне знать в комментариях, если такой вид стрима / видео будет вам полезен.

Введение в FPGA

FPGA – это программируемая вентильная матрица. На высоком уровне вы можете думать о FPGA как о связке общих логических блоков с матрицей межсоединений.Когда вы «программируете» FPGA, вы определяете поведение блоков и их соединения друг с другом.

Похоже, Кен Ширрифф отлично разобрал Xilinx XC2064. Это была первая коммерчески доступная ПЛИС. Загрузите его слайды, чтобы увидеть фантастические кадры и объяснения.

Современные ПЛИС намного сложнее. Например, ПЛИС Intel Cyclone 10CL016, используемая в Vidor, имеет 16 000 логических элементов, 504 Кбайт (или бит?) Встроенной ОЗУ и аппаратные умножители для операций DSP.Выводы могут работать на частотах до 150 МГц (иногда их называют 150 мегапередачами). Эта часть хорошо подходит для обработки аудио и видео.

ПЛИС

против микропроцессора

Основное различие между ПЛИС и микропроцессором состоит в том, что в микропроцессоре внутреннее оборудование никогда не меняется. Транзисторы имеют определенное назначение и особые соединения. В настоящее время широко распространены мультиплексоры и внутренние переключатели, которые делают микросхему более настраиваемой.Однако это все еще схема с фиксированной функцией. С другой стороны, ПЛИС может быть сконфигурирован (и переконфигурирован) как практически любая цифровая схема. Фактически, стандартный метод заключается в том, чтобы встроить ядро ​​микропроцессора в конструкцию ПЛИС.

Bitstream, схема, VHDL

Исторически сложилось так, что люди могли программировать FPGA тремя способами. Первый – это ручная запись или взлом битового потока. Битовый поток – это строка байтов, которая настраивает FPGA. Некоторым пользователям пришлось пойти по этому пути с первыми ПЛИС.Тогда было всего около 64 логических блоков. (Посмотрите выступление Кена Ширрифа, ссылка на который приведена выше.) Другой способ – использовать редактор схем. В этом случае пользователь рисует дизайн графически. Процесс аналогичен использованию EAGLE или KiCad, за исключением того, что дизайн ограничен цифровыми блоками. Эти блоки могут быть счетчиками, защелками, триггерами и памятью, и это лишь некоторые из них. Наконец, существуют языки описания высокого уровня (HDL), из которых два популярных HDL – это VHDL и Verilog. Проектирование с использованием HDL – самый распространенный метод.

Уникальность Arduino MKR Vidor 4000 заключается в том, что он не использует ни один из этих методов! Прежде чем говорить о том, как это программируется, я хочу сначала взглянуть на оборудование.

МКР Видор 4000

MKR Видор 4000, вид сверху

Плата меньше, чем я ожидал. Его размеры 83 мм (3,25 дюйма) на 25 мм (0,98 дюйма). На тонкой плате разбросано множество микросхем и разъемов. Самый яркий разъем – это mini-PCIe на одном краю. В дополнение к этому есть mini-HDMI, micro-USB, заголовок в стиле mini-JST, подключение камеры MIPI и подключение LiPo.Да, и, конечно же, есть знакомые на вид заголовки контактов ввода-вывода.

Вот некоторые вещи, которые я заметил и узнал о некоторых из этих связей.

MKR Разъемы Vidor 4000

Контакты GPIO

Судя по схемам, кажется, что выводы ввода / вывода SAMD21 подключены к некоторым выводам ввода / вывода FPGA, которые затем подключаются к выводам заголовка. Это соединение обеспечивает связь между двумя чипами. (См. Приведенный ниже код для сопоставления контактов FPGA и заголовков ввода-вывода.)

Это делает отображение контактов между заголовком и FPGA немного странным. Было бы неплохо, если бы существовала таблица, которая бы соответствовала им.

Разъем

Mini-PCIe

Краевой соединитель является отраслевым стандартом. Однако на самом деле сигналы не PCI-Express. Вместо этого это сигналы от FPGA, модуля WiFi и разъема USB. Используя этот краевой соединитель, можно легко интегрировать Vidor в более крупную систему.

ИС на МКР 4000

Поначалу меня скинули микросхемы платы.

Чипы на Видор

Большая микросхема посередине – это ПЛИС Intel (или Altera) Cyclone. Меньший квадрат – это микроконтроллер Microchip SAMD21. Просматривая схемы MKR Vidor 4000, я сначала подумал, что средний квадратный чип – это контроллер питания для FPGA. Что сделало бы его намного больше, чем другие, которые я видел, но, может быть! Но нет, я ошибался. Это EEPROM для хранения битового потока FPGA. А потом я понял, что снова ошибался. На самом деле это SDRAM.

Существует EEPROM для потока битов, но это меньший прямоугольный чип. Микросхема между SAMD21 и FPGA – это 8 МБ SDRAM! Это много памяти.

Теперь, когда чипы разобраны, давайте запрограммируем что-нибудь на MKR Vidor 4000.

Настройка Arduino Vidor

Руководство Vidor по началу работы – лучшее место для начала. (Пойдите на рисунок.) Я резюмирую ключевые шаги: загрузите 1.90 IDE, установите поддержку платы для MKR 4000 и установите некоторые библиотеки.

Что касается библиотек, я предлагаю поискать в «Диспетчере библиотек» термины: «MKR» и «4000». Доступные библиотеки, вероятно, со временем изменятся. Для этой статьи я использую библиотеки VidorPerpherials и VidorVideo.

Vidor Blink, пример

Vidor Blink, пример

После того, как опора платы установлена, вы готовы запустить пример мигания. Просто загрузите обычного подозреваемого из Файл -> Примеры -> 01 Базовый -> Blink. Нажмите “Загрузить” и подождите. Если красный светодиод мигает, вы в хорошей форме.(В качестве дополнительной меры я всегда меняю значения delay (), чтобы убедиться, что все работает.)

Подождите, это код ПЛИС C? Ардуино? VHDL?

Возможно, вы посмотрите на снимок экрана выше и заметите, что он подозрительно похож на код C, C ++ или «Arduino». Это потому, что это C ++. Так что же дает? Ну, пример мигания не программирует FPGA! Вместо этого он всего лишь программирует SAMD21 на плате.

Видите ли, Vidor – это комбинация двух цифровых систем.Код, который вы пишете в среде IDE, в первую очередь нацелен на SAMD21. Если это так, как получить доступ к Cyclone FPGA?

Блок-схема Видора

Несмотря на то, что схемы доступны (ссылка для скачивания), я собрал эту простую блок-схему, чтобы проиллюстрировать, что происходит.

Как и большинство FPGA, Vidor’s Cyclone загорается. Он загружает свой битовый поток из EEPROM. Порт USB на стороне устройства подключен только к SAMD21, а не к FPGA. (Обратите внимание, что линии передачи данных USB также подключены к разъему Mini-PCIe И некоторым ИС управления питанием.Мне пока не ясно, как главный компьютер выбирает, с чем он взаимодействует: SAMD21 или PMIC.)

Как программируется ПЛИС?

Если внимательно присмотреться к схеме, можно заметить, что между SAMD21, модулем WiFi и FPGA есть JTAG-соединения. Используя SAMD21 в качестве контроллера JTAG, главный компьютер может перепрограммировать EEPROM ПЛИС.

Соединения Vidor JTAG

FYI, JTAG расшифровывается как Joint Test Action Group. Это промышленный стандарт для сопряжения, управления и программирования микросхем.

С точки зрения пользователя, вы можете рассматривать FPGA Vidor как черный ящик. Он имеет предварительно запрограммированный поток битов с некоторыми предварительно определенными блоками интеллектуальной собственности (IP). На момент написания этой статьи у пользователя был ограниченный доступ для изменения битового потока. В будущем новый графический редактор предложит другой способ настройки FPGA.

Примечание: Успокойте клавишников. Когда я говорю «черный ящик», я имею в виду концептуально. Vidor по-прежнему является аппаратурой с открытым исходным кодом.Хотя некоторые подробности могут быть недоступны сегодня, это связано с отсутствием пропускной способности, а не с намерением. Файлы Quartus доступны, но это почти предел предоставляемой поддержки.

IDE Arduino может запрограммировать SAMD21 для связи с FPGA. Давайте посмотрим на пример.

VidorTestSketch

Взглянув на код этого скетча, обратите внимание на объект FPGA. Бывают случаи, когда микроконтроллер отправляет команды на FPGA.

Переключение контактов ПЛИС

Обратите внимание, как скетч настраивает контакты GPIO на FPGA, переключает их и считывает состояния на SAMD21.

Я предполагаю, что SAMD21 отправляет команды через JTAG на FPGA, и его текущая конфигурация их понимает. Таким образом, можно настроить такие вещи, как контакты ввода-вывода на ПЛИС, из кода SAMD21 (или Arduino).

Рассмотрение этого примера касается только возможностей Vidor. Но надеюсь этого достаточно, чтобы понять , что такое Видор .

Эскиз логотипа Vidor

Прежде чем закончить, я хотел бы упомянуть эскиз, который требует только подключения HDMI и представляет собой классную демонстрацию.(Хорошо, вам также может понадобиться адаптер micro-HDMI.) Загрузите VidorLogoDraw. Он использует некоторые примитивы графической библиотеки для рисования логотипа Arduino.

VidorDrawLogo Seria () Подождите

Уловка, заставляющая этот скетч работать, заключается в том, что SAMD21 не отправляет команды GFX, пока вы не откроете последовательный монитор. Подключите его и наслаждайтесь упрощенным изображением логотипа Arduino.

Куда пойти дальше?

Если вы взяли доску и у вас есть вопросы, возможно, вам нужно место, где можно получить ответы.Я рекомендую подфорум MKRVIDOR4000 на официальных форумах Arduino.

Стоит ли покупать MKR Vidor 4000?

Сразу после прямой трансляции кто-то спросил меня, стоит ли покупать Arduino Vidor. Как и в случае с большинством покупок, есть несколько соображений.

Позвольте мне начать с того, почему вы, возможно, не захотите его покупать. Во-первых, вас не интересуют ПЛИС. Это легкая квалификация. Затем я хотел бы посмотреть на ваш уровень опыта работы с ПЛИС. Набор инструментов Vidor не предназначен для разработки пользовательских блоков Verilog или VHDL.Это не универсальная платформа разработки для универсального программирования ПЛИС. Хотя этот процесс возможен, это не целевая аудитория. (Хотя я действительно надеюсь, что опытные разработчики FPGA внесут свой вклад в блоки.)

Однако. Если вы хотите изучить приложения, в которых вы можете использовать FPGA, не сталкиваясь со сложностями странной инструментальной цепочки, тогда да. Получите Видор. Вы можете научиться соединять блоки вместе, разгрузить задачи с микроконтроллера и понять возможности платформы FPGA.

На момент публикации, август 2018 г., плата лучше всего подходит для первых пользователей. Однако, если вы заинтересованы в изучении ПЛИС, это должно быть хотя бы в вашем списке желаний. (Если его еще нет в корзине.)

Вы можете узнать больше на странице продукта Vidor на веб-сайте Arduino.

ABX00022: Arduino: Arduino MKR Vidor 4000 Intel Cyclone 10CL016 FPGA: электронные комплекты и проекты

Вернуться к началу

Обзор

Ардуино MKR Видор 4000

С MKR VIDOR 4000 вы можете настроить его так, как хотите.По сути, вы можете создать свою собственную плату контроллера. Он поставляется с аппаратным обеспечением и возможностями: SRAM объемом 8 МБ; микросхема QSPI Flash объемом 2 МБ – 1 МБ выделен для пользовательских приложений; разъем Micro HDMI; разъем камеры MIPI; и Wifi & BLE на базе U-BLOX NINA W10 Series. Он также включает классический интерфейс MKR, на котором все выводы управляются как SAMD21, так и FPGA. Кроме того, он имеет разъем Mini PCI Express с максимум 25 программируемыми пользователем контактами.

ПЛИС содержит 16К логических элементов, 504 КБ встроенной ОЗУ и 56 аппаратных умножителей 18×18 бит для высокоскоростного DSP. Каждый вывод может переключаться на частоте более 150 МГц и может быть настроен для таких функций, как UART, (Q) SPI, ШИМ высокого разрешения / высокой частоты, квадратурный энкодер, I2C, I2S, сигма-дельта-ЦАП и т. Д.

Встроенная FPGA может также использоваться для высокоскоростных операций DSP для обработки аудио и видео. Эта плата также оснащена микросхемой SAMD21. Связь между FPGA и SAMD21 осуществляется без проблем.

Технические характеристики

  • FPGA: Intel Cyclone 10CL016 Mini PCI Express порт с программируемыми контактами
  • Разъем камеры: Разъем камеры MIPI
  • Рабочее напряжение цепи: 3.3В
  • Цифровые контакты ввода / вывода: 22 разъема + 25 Mini PCI Express
  • Выводы ШИМ: Все выводы
  • UART: до 7 (в зависимости от конфигурации FPGA)
  • SPI: до 7 (зависит от конфигурации FPGA)
  • I2C: до 7 (зависит от конфигурации FPGA)
  • Аналоговые входные контакты: н / д
  • Аналоговые выходные контакты: нет данных
  • Внешние прерывания: нет данных
  • Постоянный ток на контакт ввода / вывода: 4 или 8 мА
  • Флэш-память: 2 МБ
  • SDRAM: 8 МБ
  • EEPROM: нет данных
  • Тактовая частота: 48 МГц – до 200 МГц
  • Видеовыход: Micro HDMI
  • Микроконтроллер: Microchip ATSAMD21 (процессор Arm Cortex-M0 +)
  • Wi-Fi: U-blox Nina-W102
  • (VIN): 5V
  • Поддерживаемая батарея (*): Li-Po, одноэлементный, 3. 7 В, минимум 700 мАч
  • Рабочее напряжение цепи: 3,3 В
  • Цифровые контакты ввода / вывода: 22
  • Контакты PWM: 12 (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, A3 – или 18 -, A4 – или 19)
  • UART: 1
  • SPI: 1
  • I2C: 1
  • Аналоговые входные контакты: 7 (АЦП 8/10/12 бит)
  • Аналоговые выходные выводы: 1 (ЦАП 10 бит)
  • Внешние прерывания: 8 (0, 1, 4, 5, 6, 7, 8, A1 -или 16-, A2- или 17)
  • Флэш-память: 256 КБ
  • SRAM: 32 КБ
  • EEPROM: Нет
  • Тактовая частота: 32.768 кГц (RTC), 48 МГц
  • LED_BUILTIN: 6
  • Полноскоростное USB-устройство и встроенный хост: включены
  • LED_BUILTIN: 6
  • Длина: 83 мм
  • Ширина: 25 мм
  • Вес: 32 г

Ресурсы и материалы для загрузки

Сообщить о проблеме
Предложить товар

Введение в Arduino MKR Vidor 4000

Привет всем! Надеюсь, ты сегодня здоров. Приветствую вас на борту. Сегодня в этом посте я расскажу вам Введение в Arduino MKR Vidor 4000.

Arduino MKR Vidor 4000 – это мощная плата, с помощью которой вы можете разработать свою собственную плату контроллера. Включение FPGA делает это устройство уникальным и отдельным от других плат Arduino, доступных на рынке. С помощью этой функции FPGA вы можете обрабатывать аудио и видео, что невозможно с другими платами Arduino.

Используя это устройство, вы можете создать компьютер, считывающий информацию с датчиков в реальном времени, и, что самое приятное, эта плата совместима со всеми другими платами Arduino.С помощью этой платы вы можете сделать все выводы ШИМ-сигналов (на стороне блока FPGA) для управления скоростью двигателей. Более того, вы можете разработать педаль звуковых эффектов для своей гитары, записывая звук в реальном времени.

С помощью облака Arduino IoT вы также можете управлять сложной лабораторной машиной, соединенной с рядом двигателей.

Прежде чем двигаться дальше, я предлагаю вам прочитать Введение в Arduino MKR NB 1500, которое я загрузил ранее.

Я предлагаю вам пристегнуться, поскольку я проведу вас через полное введение в Arduino MKR Vidor 4000, включая техническое описание, распиновку, функции, программирование и приложения.

Приступим.

Введение в Arduino MKR Vidor 4000
  • Arduino MKR Vidor 4000 – это мощная плата, с помощью которой вы можете разработать свою собственную плату контроллера.
  • Эта плата объединена с микроконтроллером SAMD21 и Intel® Cyclone® 10CL016 (FPGA).
  • Включение самой мощной программируемой микросхемы FPGA делает это устройство уникальным и отличным от других плат Arduino, доступных на рынке.
  • С помощью этой функции FPGA вы можете обрабатывать аудио и видео, что невозможно для других плат Arduino.
  • ПЛИС содержит 504 Кбайт встроенной ОЗУ, 16 КБ логических элементов и 56 18 × 18-битных умножителей HW, которые используются для высокоскоростного DSP (цифровой обработки сигналов).
  • Каждый вывод активируется на частоте более 150 МГц и обычно конфигурируется для таких функций, как (Q) SPI, ШИМ с высоким разрешением / высокой частотой, UART, квадратурный энкодер, сигма-дельта-ЦАП, I2C, I2S и т. Д.
  • Используя это устройство Vidor, вы можете провести эксперимент с точностью, поскольку оно оснащено кнопкой СБРОС, которую вы можете использовать в случае, если что-то пойдет не так.Когда вы нажимаете и отпускаете эту кнопку, плата сбрасывается, что помогает вам программировать плату с нуля.
  • Рабочее напряжение этой платы составляет 3,3 В, и один порт Mini PCI Express с программируемыми контактами также установлен на плате, на которой установлено до 25 программируемых пользователем контактов.

  • На плате также имеется разъем камеры MIPI (интерфейс процессора мобильной индустрии), который представляет собой не что иное, как набор стандартов, позволяющих реализовать важные функции смартфонов, включая дисплеи и устройства обработки изображений.Проще говоря, стандарт MIPI используется для обеспечения возможности подключения в мобильных, мультимедийных, автомобильных, дополненной и виртуальной реальности, а также в других связанных приложениях.
  • Другие функции включают в себя – Wi-Fi и BLE с питанием от модуля U-BLOX NINA W102, разъем Micro HDMI, интерфейс MKR, где все контакты управляются как SAMD21, так и FPGA.
  • Флэш-память FPGA на этой плате Vidor составляет 2 МБ, а память SDRAM – 8 МБ. Память EEPROM отсутствует. Флэш-память используется для хранения программы Arduino (эскиза), а память SDRAM используется для создания и управления переменными при ее запуске.
  • Флэш-память на стороне микроконтроллера составляет 256 КБ, а память SRAM – 32 КБ. На стороне микроконтроллера нет памяти EEPROM.
  • Питание платы по USB 5В. Кроме того, на плате также есть схема зарядки Li-Po, которая запускает плату двумя способами: либо от внешнего источника 5 В, либо от батареи.

Распиновка Arduino MKR Vidor 4000

На следующем рисунке показана распиновка Arduino MKR Vidor 4000.

Arduino MKR Vidor 4000 Описание контактов

Надеюсь, вы получили краткое представление об этой плате Vidor. В этом разделе мы рассмотрим описание каждого вывода, установленного на стороне блока микроконтроллера и стороне блока FPGA. Давайте сразу приступим.

Цифровые выводы

Всего на стороне блока FPGA установлено 22 разъема + 25 выводов Mini PCI Express. PCI Mini Express – это порт с программируемыми контактами. Всего на блоке микроконтроллера 8 цифровых контактов, которые остаются в двух состояниях: i.е. либо ВЫСОКИЙ, либо НИЗКИЙ. Когда эти контакты ВЫСОКОГО уровня, они считаются ВКЛЮЧЕННЫМИ и получают 5 В, а когда эти контакты имеют низкий уровень, они считаются ВЫКЛЮЧЕННЫМИ и получают 0 В.

Аналоговые выводы

Важно отметить, что аналоговые выводы на плате не проходят через FPGA. Эти контакты подключены как к ПЛИС, так и к SAMD. Более того, использование этих контактов на стороне SAMD совершенно нормально, если вы не используете эти контакты в качестве выходов на стороне FPGA. На блоке FPGA нет аналогового вывода.На блоке микроконтроллера 7 аналоговых выводов.

Контакты PWM

Функция PWM на этой плате уникальна. Вы можете использовать все выводы на ПЛИС как выводы ШИМ для управления скоростью двигателей. Когда эти контакты PWM активированы, плата выдает аналоговый результат с помощью цифровых средств. На блоке микроконтроллера 13 контактов PWM.

Контакты UART

На стороне блока микроконтроллера установлены два контакта UART. Rx – это вывод, используемый для приема последовательных данных, а Tx – вывод, используемый для передачи последовательных данных.

На стороне FPGA используется до 7 UART в зависимости от конфигурации FPGA.

Контакты I2C

Два контакта SDA и SCL используются для связи I2C. SDA – это последовательная линия данных, по которой передаются данные, а SCL – это последовательная линия синхронизации, используемая для синхронизации всей передачи данных по шине I2C. Опять же, на стороне блока микроконтроллера есть только один протокол I2C. На стороне FPGA можно использовать до 7 протоколов I2C.

Контакты SPI

Плата Vidor поставляется с одним протоколом связи SPI (последовательный периферийный интерфейс), который в основном используется для развития связи между контроллером и другими периферийными устройствами, такими как датчики или регистры сдвига.На стороне микроконтроллера есть только один протокол SPI, в то время как на стороне FPGA используется до 7 протоколов SPI, в зависимости от конфигурации FPGA.

Два контакта… MISO (главный вход, подчиненный выход) и MOSI (главный выход, подчиненный вход) используются для связи SPI. Эти контакты используются для приема или отправки данных контроллером.

Характеристики Arduino MKR Vidor 4000

Микроконтроллер = SAMD21 Cortex®-M0 + 32-битный микроконтроллер ARM с низким энергопотреблением

FPGA = Intel® Cyclone® 10CL016

Разъем камеры

= разъем камеры MIPI

PCI = порт Mini PCI Express с программируемым выводы

Цифровые выводы ввода / вывода на FPGA = 22 заголовка + 25 Mini PCI Express

Цифровые выводы ввода / вывода на стороне MCU = 8

выводы PWM на FPGA = все выводы

выводы PWM на стороне MCU = 13 выводов

Аналоговые выводы на FGPA = нет

Аналоговые выводы на стороне MCU = 7

UART для FGPA = до 7 в зависимости от конфигурации FPGA

SPI для FGPA = до 7 в зависимости от конфигурации FPGA

I2C для FGPA = до 7 в зависимости от конфигурации FPGA

UART для MCU = 1

SPI для MCU = 1

I2C для MCU = 1

Источник питания платы (USB, Vin) = 5 В

Рабочее напряжение цепи = 3 . 3 В

Флэш-память на FGPA = 2 МБ

Память SDRAM на FGPA = 8 МБ

Флэш-память на MCU = 256 КБ

Память SRAM на MCU = 32 КБ

Тактовая частота для FGPA = 48 МГц – до 200 МГц

Тактовая частота для MCU = 32,768 кГц (RTC), 48 МГц

USB = полноскоростное USB-устройство и встроенный хост

Размер = 25×83 мм

Вес = 43,5 г

Программирование

Плата Vidor программируется с помощью Программное обеспечение Arduino IDE (интегрированная среда разработки).Это программное обеспечение используется для программирования всех плат Arduino.

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

Это устройство содержит загрузчик, который является встроенной функцией этой платы, освобождая вас от покупки внешнего записывающего устройства для записи программы на микроконтроллер.

Arduino MKR Vidor 4000 Applications

  • Vidor используется для создания светодиодного секвенсора
  • Используется для обработки аудио и видео
  • Используется для создания звукового эффекта для гитары
  • Так же можно сделать часы Видор
  • MIPI используется для реализации важных функций смартфонов

На сегодня все. Надеюсь, эта статья окажется для вас полезной. Если вы не уверены или у вас есть вопросы, вы можете оставить свой комментарий в разделе ниже. Я хотел бы помочь вам как можно лучше. Не стесняйтесь делиться своими ценными отзывами и предложениями по поводу контента, которым мы делимся, чтобы мы продолжали создавать качественный контент, адаптированный к вашим точным потребностям и требованиям. Спасибо, что прочитали статью.

Arduino MKR Vidor 4000 – Сделайте: проекты DIY и идеи для производителей

Ранее в этом году на выставке Bay Area Maker Faire команда Arduino анонсировала плату MKR Vidor 4000, что стало большим новым шагом для команды Arduino.Команда Arduino начала делать микроконтроллеры более простыми в использовании, упростив оборудование и программное обеспечение в надежде, что каждый сможет начать их использовать. Теперь с Vidor команда надеется сделать то же самое с другим классом электроники, FPGA.

ПЛИС, или программируемая пользователем вентильная матрица, представляет собой электронное устройство, подобное микроконтроллеру, но в то время как микроконтроллер использует свои транзисторы для интерпретации кода, который вы ему отправляете, ПЛИС содержит логические блоки, похожие на мини-схемы внутри, и код, который вы отправляете. provide решает, как эти логические блоки соединяются вместе.Это похоже на создание схемы с кодом, а не с перемычками. Настоящая выгода от этого в том, что после того, как вы запрограммировали оборудование для выполнения задачи, оно может выполнять эту задачу с невероятной скоростью.

Раньше проблема заключалась в том, что многие пакеты FPGA имели высокий порог входа для новых пользователей. Помимо обучения их программированию, вам также необходимо было понять, как настроить необходимое оборудование для работы устройства. Другие компании ранее выпускали пакеты, призванные помочь пользователям начать разработку FPGA, но ни у одной из них не было такой родословной, как у Vidor.

Пока Vidor отсутствует на рынке, он все еще находится на начальной стадии. Как и все остальное в экосистеме Arduino, все дело в библиотеках. Vidor действительно начнет сиять, поскольку для его поддержки будет разработано больше библиотек. Плата Vidor поверх FPGA содержит микросхему микроконтроллера Arm Cortex-M0 +, которую пользователь тоже может программировать. Это означает, что все ваши обычные скетчи Arduino могут работать на Vidor вместе с инструкциями FPGA.

Вы можете настроить Vidor внутри Arduino IDE, выполнив поиск в диспетчере плат.Вспомогательные библиотеки можно найти в диспетчере библиотек. Arduino также создала хорошее руководство, чтобы вы начали понимать FPGA HDL (язык описания оборудования, язык программирования, используемый для настройки FPGA), поэтому обязательно прочтите документы, даже если вы опытный профессионал в программировании микроконтроллеров.

После того, как я настроил свой Vidor, я начал экспериментировать с базовыми эскизами, просто чтобы убедиться, что все работает. Я обнаружил, что часто не могу загрузить новый код на устройство.Немного погуглив, и я обнаружил, что часто Vidor блокирует доступ к последовательному порту для перепрограммирования. Решение состоит в том, чтобы быстро нажать кнопку сброса дважды, чтобы перевести Vidor в режим загрузчика и разблокировать последовательный доступ. Как только я решил эту проблему, работать с Vidor стало легко.

Наряду с мощью чипа FPGA, команда Arduino добавила в пакет несколько других удобных устройств. На борту есть Wi-Fi и Bluetooth, а также камера MIPI и разъемы mini HDMI.Существует отличная демонстрация для начала работы, в которой показано, как использовать камеру Vidor для распознавания QR-кодов, что было бы непросто для многих микроконтроллеров.

На данный момент Vidor будет отнесен к супер-ранним последователям и тем, кто интересуется разработкой FPGA, но я предсказываю, что по мере роста поддержки библиотеки для этой платы будет расти и ее популярность, и мы увидим несколько очень интересных проектов. крошечный, но мощный пакет.

Arduino MKR Vidor 4000 – Makerlab Electronics

.

MKR VIDOR 4000 позволяет настроить его так, как вы хотите; вы можете создать свою собственную плату контроллера.Он поставляется с аппаратным обеспечением и возможностями: SRAM объемом 8 МБ; микросхема QSPI Flash объемом 2 МБ – 1 МБ выделен для пользовательских приложений; разъем Micro HDMI; разъем камеры MIPI; и Wifi & BLE на базе U-BLOX NINA W10 Series. Он также включает классический интерфейс MKR, на котором все выводы управляются как SAMD21, так и FPGA. Кроме того, он имеет разъем Mini PCI Express с максимум 25 программируемыми пользователем контактами.

ПЛИС содержит 16К логических элементов, 504 КБ встроенной ОЗУ и 56 18 × 18-битных умножителей HW для высокоскоростного DSP.Каждый вывод может переключаться на частоте более 150 МГц и может быть настроен для таких функций, как UART, (Q) SPI, ШИМ высокого разрешения / высокой частоты, квадратурный энкодер, I2C, I2S, сигма-дельта-ЦАП и т. Д.

Встроенная FPGA также может использоваться для высокоскоростных операций DSP для обработки аудио и видео. Эта плата также оснащена микросхемой SAMD21. Связь между FPGA и SAMD21 осуществляется без проблем.

Технические характеристики:
ПЛИС Intel Cyclone 10CL016
Порт Mini PCI Express с программируемыми контактами
Разъем камеры Разъем камеры MIPI
Рабочее напряжение цепи 3.
Цифровые контакты ввода / вывода 22 заголовка + 25 Mini PCI Express
Штифты ШИМ Все контакты
UART До 7 (в зависимости от конфигурации FPGA)
SPI До 7 (в зависимости от конфигурации FPGA)
I2C До 7 (в зависимости от конфигурации FPGA)
Контакты аналогового входа н / д
Контакты аналогового вывода н / д
Внешние прерывания н / д
Постоянный ток на контакт ввода / вывода 4 или 8 мА
Флэш-память 2 МБ
SDRAM 8 МБ
EEPROM н / д
Тактовая частота 48 МГц – до 200 МГц
Видеовыход Микро-HDMI
Микроконтроллер Микрочип ATSAMD21 (процессор Arm Cortex-M0 +)
Wi-Fi U-blox Нина-W102
(VIN) 5 В
Поддерживаемая батарея (*) , одиночный элемент Li-Po, 3. 7 В, минимум 700 мАч
Рабочее напряжение цепи 3,3 В
Цифровые контакты ввода / вывода 22
Штифты ШИМ 12 (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, A3 – или 18 -, A4 – или 19)
UART 1
SPI 1
I2C 1
Контакты аналогового входа 7 (АЦП 8/10/12 бит)
Контакты аналогового вывода 1 (ЦАП 10 бит)
Внешние прерывания 8 (0, 1, 4, 5, 6, 7, 8, A1 -или 16-, A2- или 17)
Флэш-память 256 КБ
SRAM 32 КБ
EEPROM
Тактовая частота 32.768 кГц (RTC), 48 МГц
LED_BUILTIN 6
Полноскоростное USB-устройство и встроенный хост Включено
LED_BUILTIN 6
Длина 83 мм
Ширина 25 мм
Масса 32 г

Документация:

ОШ: Схема

MKR Vidor 4000 – это оборудование с открытым исходным кодом! Вы можете собрать свою собственную доску, используя следующие файлы:

СХЕМЫ IN. PDF

РАЗМЕР ПЛАТЫ В .DXF

Arduino MKR Vidor 4000 – Роботы Кипр

Ардуино MKR Видор 4000

Обзор

Arduino MKR Vidor 4000 обеспечивает простоту использования Arduino для работы с самыми мощными из существующих перепрограммируемых микросхем: ПЛИС. С Vidor вы можете создать плату, на которой все контакты являются сигналами ШИМ, контролирующими скорость двигателей. Вы можете записывать звук в реальном времени и создавать звуковые эффекты для своей гитары.Можно создать компьютер, который в режиме реального времени считывает информацию с датчика и отправляет ее на современный монитор или снимает видео и накладывает информацию датчика на изображение, которое затем будет отправлено на экран. Вы можете подключиться к Arduino IoT Cloud и управлять сложной лабораторной машиной с большим количеством двигателей. Вы даже можете создать прототип собственных процессоров внутри FPGA и заставить его работать параллельно с другим микроконтроллером на плате. Vidor – это устройство, которое приглашает к экспериментам, точности и высокоскоростным вычислениям.

Главный чип на плате – Intel® Cyclone® 10CL016; он содержит 16 КБ логических элементов, 504 КБ встроенной ОЗУ и 56 18 × 18-битных умножителей HW для высокоскоростных операций DSP. Каждый вывод может переключаться на частоте более 150 МГц и может быть настроен для таких функций, как UART, (Q) SPI, ШИМ высокого разрешения / высокой частоты, квадратурный энкодер, I2C, I2S, сигма-дельта-ЦАП и т. Д.

Плата поставляется с 8 МБ SRAM для поддержки операций FPGA с видео и аудио. Код FPGA хранится в микросхеме QSPI Flash емкостью 2 МБ, из которых 1 МБ выделен для пользовательских приложений.Возможно выполнение высокоскоростных операций DSP для обработки аудио и видео. Поэтому Vidor включает в себя разъем Micro HDMI для вывода звука и видео, а также разъем камеры MIPI для ввода видео. Все контакты платы управляются как SAMD21, так и FPGA, при этом соблюдая формат семейства MKR. Наконец, имеется разъем Mini PCI Express с максимум 25 программируемыми пользователем контактами, который можно использовать для подключения FPGA в качестве периферийного устройства к компьютеру или для создания собственных интерфейсов PCI.

Микроконтроллер платы представляет собой 32-битный SAMD21 Arm® Cortex®-M0 с низким энергопотреблением, как и другие платы семейства Arduino MKR. Связь по Wi-Fi и Bluetooth® осуществляется с помощью модуля от u-blox, NINA-W10, чипсета с низким энергопотреблением, работающего в диапазоне 2,4 ГГц. Кроме того, безопасная связь обеспечивается криптографическим чипом Microchip® ECC508. Кроме того, вы можете найти на борту зарядное устройство и направляемый светодиод RGB.

Посмотрите на все разъемы платы на следующем изображении:

Мощность FPGA

Если вы не знакомы с этим термином, ПЛИС – это программируемая вентильная матрица, микросхема, в которой логика, управляющая ее операциями, не записана во время производства.Можно написать свой собственный ЦП, серию выделенных высокочастотных ШИМ-выходов, цифровой звуковой микшер, устройство наложения видео или все, что вы можете себе представить. Основное ограничение – количество логических вентилей, необходимых для разработки любого из этих приложений.

В качестве примера того, как такой мощный процессор может быть интегрирован в ваш типичный рабочий процесс Arduino, мы создали серию библиотек, которые могут выполнять некоторые простые задачи, включая микроконтроллер и специализированный код FPGA.См. Следующие примеры, чтобы увидеть, как это работает:

Нарисуйте логотип Arduino: узнайте, как использовать библиотеку VidorGraphics для вывода видеосигнала на монитор через разъем HDMI. Проверьте код здесь.
Включить камеру: получить видеосигнал с камеры и отправить его на монитор компьютера. См. Пример здесь.

Если вы опытный разработчик FPGA, вы будете рады узнать, что мы выпустили серию библиотек, обеспечивающих многие из основных функций, необходимых для ваших проектов.Вы можете проверить эту группу репозиториев Github, содержащих весь созданный нами код Vidor с открытым исходным кодом.
WiFi и Arduino IoT Cloud

В Arduino мы сделали подключение к сети Wi-Fi таким же простым, как мигание светодиода. Вы можете подключить свою плату к любой существующей сети Wi-Fi или использовать ее для создания собственной точки доступа Arduino. Конкретный набор примеров, которые мы предоставляем для MKR Vidor 4000, можно найти на справочной странице библиотеки WiFiNINA.
Bluetooth® и BLE

Коммуникационный набор микросхем MKR Vidor 4000 может быть как клиентом, так и хост-устройством BLE и Bluetooth®.Что-то довольно уникальное в мире платформ микроконтроллеров. Если вы хотите увидеть, насколько просто создать центральное или периферийное устройство Bluetooth®, изучите примеры в нашей библиотеке ArduinoBLE.
Мы открываем для вас возможность взламывать

MKR Vidor 4000 – это многопроцессорное устройство, которое приглашает к экспериментам. Взлом модуля WiFiNINA позволяет, например, одновременно использовать на плате как WiFi, так и BLE / Bluetooth®. Еще одна возможность – иметь сверхлегкую версию Linux, работающую на модуле, в то время как основной микроконтроллер управляет устройствами низкого уровня, такими как двигатели или экраны. Эти экспериментальные методы требуют продвинутого взлома с вашей стороны. Это возможно путем изменения прошивки модуля, которую вы можете найти в наших репозиториях на github.

ОСТОРОЖНО: этот вид взлома нарушает сертификацию вашего модуля WiFiNINA, делайте это на свой страх и риск.
Питание от аккумулятора

Его USB-порт может использоваться для подачи питания (5 В) на плату. Он имеет схему зарядки Li-Po, которая позволяет Arduino MKR Vidor 4000 работать от батареи или внешнего источника 5 В, заряжая батарею Li-Po при работе от внешнего источника питания.Переключение с одного источника на другой происходит автоматически.
Начало работы

Раздел «Начало работы» содержит всю информацию, необходимую для настройки платы, использования программного обеспечения Arduino (IDE) и начала возиться с кодированием и электроникой. Если вы хотите узнать больше о программировании VHDL, низкоуровневого языка, используемого для написания параллельного кода, который будет выполняться на FPGA, проверьте эту справочную страницу.

В настоящее время вам необходимо сгенерировать код ПЛИС с помощью внешнего программного обеспечения.В следующих руководствах, разработанных членом сообщества Arduino Дэниелом Герцем, объясняется, как создать код FPGA с помощью инструмента разработки Intel® Quartus®:

Начало работы с ПЛИС с использованием Arduino MKR Vidor 4000: прочтите введение здесь.
Как программировать ПЛИС Arduino MKR Vidor 4000 с помощью Quartus IDE: ознакомьтесь с учебным пособием здесь.

Технические характеристики

Arduino MKR Vidor 4000 основан на микроконтроллере SAMD21 и Intel® Cyclone® 10CL016.

Блок ПЛИС

ПЛИС Intel® Cyclone® 10CL016 (таблица)
PCI Порт Mini PCI Express с программируемыми контактами
Разъем камеры Разъем камеры MIPI
Рабочее напряжение цепи 3,3 В
Цифровые контакты ввода / вывода 22 заголовка + 25 Mini PCI Express
Штифты ШИМ Все контакты
UART До 7 (в зависимости от конфигурации FPGA)
SPI До 7 (в зависимости от конфигурации FPGA)
I2C До 7 (в зависимости от конфигурации FPGA)
Контакты аналогового входа н / д
Контакты аналогового вывода н / д
Внешние прерывания н / д
Постоянный ток на контакт ввода / вывода 4 или 8 мА
Флэш-память 2 МБ
SDRAM 8 МБ
EEPROM н / д
Тактовая частота 48 МГц – до 200 МГц
Видеовыход Микро-HDMI

Блок микроконтроллера

Микроконтроллер SAMD21 Cortex®-M0 + 32-битный микроконтроллер ARM с низким энергопотреблением (техническое описание)
Радиомодуль u-blox NINA-W102 (лист данных)
Блок питания платы (USB / VIN) 5 В
Защитный элемент ATECC508 (лист данных)
Поддерживаемая батарея , одиночный элемент Li-Po, 3. 7 В, 1024 мАч минимум
Рабочее напряжение цепи 3,3 В
Цифровые контакты ввода / вывода 8
Штифты ШИМ 13 (0 .. 8, 10, 12, 18 / A3, 19 / A4)
UART 1
SPI 1
I2C 1
Контакты аналогового входа 7 (АЦП 8/10/12 бит)
Контакты аналогового вывода 1 (ЦАП 10 бит)
Внешние прерывания 10 (0, 1, 4, 5, 6, 7, 8, 9, 16 / A1, 17 / A2)
Постоянный ток на контакт ввода / вывода 7 мА
Флэш-память ЦП 256 КБ (внутренняя)
SRAM 32 КБ
EEPROM
Тактовая частота 32.768 кГц (RTC), 48 МГц
LED_BUILTIN 6
USB Полноскоростное USB-устройство и встроенный хост
LED_BUILTIN 6
.

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

Ваш адрес email не будет опубликован.