Intel galileo gen 2

5 шт. со склада г.Москва,
срок 3-4 рабочих дня − + В корзину

Intel Galileo Gen 2 – это плата разработки, первая в семействе Arduino-сертифицированных плат развития на основе архитектуры Intel и специально создана для разработчиков, студентов, обучающих учреждений и радиолюбителей.

Плата основана на Intel Quark SoC X1000, 32-битном Intel Pentium процессоре– класса система на кристалле (SoC). Подлинный процессор Intel и родные возможности ввода/вывода платы Intel Galileo обеспечивают отличную производительность и широкий спектр аппаратно периферийного и программное обеспечение. Плата также обеспечивает простую и более эффективную среду разработки по сравнению с процессорами Intel Atom и Intel Core.

Что нового в Intel Galileo Gen 2
– 3.5мм RS-232 консоль порт заменен на 3.3В USB TTL UART разъем;
– 12 GPIOs;
– 12-бит широтно-импульсная модуляция (PWM);
– Консоль UART1 может быть перенаправлена в разъем Arduino;
– 12 питание через Ethernet ( требуется установка PoE модуля);
– Изменена система регулирования питания, напряжение питания 7..15В.

Особенности:
– Intel Quark SoC X1000 процессор приложений, 32-бит, одно ядро, один-поток, набор инструкций ISA, скорость до 400МГц;
– Поддержка широкого спектра стандартных интерфейсов ввода/вывода, в том числе полноразмерный слот mini-PCI Express, порт 100Mb Ethernet, слот Micro-SD, USB хост порт и USB клиент порт;
– 256МБ DDR3, 512КБ RAM, 8МБ NOR Flash, 8Кб EEPROM плюс поддержка Micro-SD карты до 32ГБ;
– Аппаратная/ пин совместимость с широким спектром Arduino Uno R3 Shields;
– Программируется через Arduino IDE которая поддерживается на Microsoft Windows, Max OS и Linux хост операционных системах;
– Поддержка Yocto 1.4 Poky Linux релиза.

The Intel® Galileo Gen2 is a board based on the Intel® Quark™ SoC X1000, a 32-bit Intel® Pentium® processor- >SoC ), operating at speeds up to 400MHz.

The Quark processor supports the Yocto 1.4 Poky Linux distribution.

The board has built-in Ethernet with support for Power Over Ethernet( PoE ), a USB 2.0 Host Port, micrso-SD slot, PCI Express mini-card slot, 20 digital input/output pins (of which 6 can be used as PWM outputs with 8/12-bits of resolution and 6 as analog inputs with 12 bits of resolution), a micro USB connection, an ICSP header, a JTAG header, and 2 reset buttons.

There is also an integrated Real Time Clock (RTC), with an optional 3V “coin cell” battery for operation between turn on cycles.

The Intel® Galileo Gen2 supports shields that operate at either 3.3v or 5v. The board is designed to be hardware and software pin-compatible with Arduino shields designed for the Uno R3. Digital pins 0 to 13 (and the adjacent AREF and GND pins), Analog inputs 0 to 5, the power header, ICSP header, and the UART port pins (0 and 1), are all in the same locations as on the Arduino Uno R3.

Visit the Intel® Board Documentation page for further informations.

Supported Arduino libraries

The software release supports the following Arduino libraries:

SPI
EEPROM
UART
GPIO
Wi-Fi
Servo
USB Host

Supported Arduino shields

A list of the supported Arduino shields can be found here.

Summary

Microcontroller SoC Quark X1000
Operating Voltage 3.3V / 5V
Input Voltage 7-15V
Digital I/O Pins 14 (of which 6 provide 8/12-bit PWM output)
Analog Input Pins 6
Flash Memory 512 kB
RAM 256 MB DDR3
SRAM 512 kB
Flash Storage 8MB
EEPROM 8kB
Clock Speed 400 MHz
PoE compatible
Length 124 mm
Width 72 mm

Differences

Differences between the Intel® Galileo Gen2 and the Intel® Galileo

The earlier Intel Galileo did not have an on-board regulator, so the power supply had to be exactly 5V. The Intel Galileo Gen2 has on-board regulator, so it may be powered with any suitable supply providing 7-15 VDC.

Differences between the Arduino Yùn and the Intel® Galileo Gen2

The Arduino Yùn has two processors: One runs Linux, and an Atmel microcontroller runs the Arduino sketch. The Intel® Galileo Gen2 has one processor. In addition to running Linux, this processor runs the Arduino sketch.

Читайте также:  Форумы по 3d печати

Differences between the Intel® Galileo Gen2 and all Arduinos

Note that a sketch loaded into the Intel® Galileo Gen2 is lost after a power cycle. It is possible to boot the Intel® Galileo Gen2 from a uSD card, and in that case to restore a sketch from the same card. Instructions for doing so are forthcoming.

On-board Linux

The Yocto 1.4 Poky Linux distribution is installed on your Intel Galileo Gen2. You can access various Linux functions with the system() call.

Power

The Intel® Galileo Gen2 can be powered only via an external power supply. The adapter can be connected by plugging a 2.1mm center-positive plug into the board’s power jack. The board can operate on an external supply of 7 to 15 volts. The provided power supply provides 12v.

The power pins are as follows:

  • VIN: The input voltage to the Intel® board. You can access the voltage supplied via the power jack through this pin.
  • 5V: This pin outputs a regulated 5V from the regulator on the board.
  • 3.3V: A 3.3 volt supply generated by the on-board regulator. This regulator also prov >PoE ) capable

Buttons

There are 2 reset buttons with different functions on the board:

  • Reboot: resets the Quark X1000 processor
  • Reset: resets sketch and any attached shield

Memory

The Quark X1000 has 512kB of embedded SRAM.

The board has an additional 256 MB DDR3 Ram amd 8MB of Flash to store firmware and the Arduino sketch. It’s possible to update the firmware using the IDE. The on board uSD supports uSD card up 32G, and can be used to provide a complete Yocto 1.4 Poky Linux image.

Input and Output

  • Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data.
  • Digital I/O: Digital pins 0 through 13 and Analog pins A0 through A5 can be used as a digital input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They can operate at 3.3 or 5 volts.

Each pin can provide (source) or receive (sink) a current of 16mA @ 5v, or a current of 8mA@3.3V

    PWM: Pins 3,5,6,9,10, and 11
    Prov >

There are 2 reset buttons with different functions on the board:

  • Reboot:
  • resets the Quark X1000 processor
  • Reset:
    • resets sketch and attached shield
    • Communication

      The Intel® Galileo Gen2 has a number of facilities for communicating with a computer, another Galileo, Arduino or other microcontrollers, and different devices like phones, tablets, cameras and so on.

      It provides 2 UART Controllers : UART 0 to Galileo headers 0, 1; UART 1 to 6-pin 3.3V USB TTL FTDI header; optionally directed to Galileo headers 2, 3 .

      The Native USB port can also act as a USB host for connected peripherals such as mice, keyboards, and smartphones. To use these features, see the USBHost reference pages. The onboard microSD card reader is accessible through the SD Library. The communication between Galileo and the SD card is provided by an integrated SD controller and does not require the use of the SPI interface like other Arduino boards.

      The onboard Ethernet interface is fully supported, use the Ethernet Library. It does not require the use of the SPI interface like existing Arduino shields.

      The Arduino software includes a Wire library to simplify use of the TWI/I2C bus; see the documentation for details. For SPI communication use the SPI library.

      The board prov >WiFi , Bluetooth or Cellular connectivity.

      Programming

      The Intel® Galileo Gen2 can be programmed with this special version of the Arduino software. It’s possible to make requests of the Linux kernel with system() calls. This gives your Arduino sketch access to powerful utilities like Python, Node.js, OpenCV , and all sorts of fun Linux stuff.

      Note that Intel® Galileo Gen2 forgets the sketch after powering down. It is possible to booth the Galileo Gen2 from the uSD card, and in that case, to restore a sketch from the same card. Instructions for that will be forthcoming.

      Further documentation

      For detailed documentation please refer to the Intel Documentation. In order to get started with your board please visit the getting started page

      Читайте также:  Что значит установить смонтировав образ

      Компания Intel выпускает несколько устройств для разработчиков: Galileo, Galileo Gen2 и Edison — продукты, совместимые с платформой Arduino, основное назначение которых – создание решений в сфере интернета вещей (IoT ).

      Сегодня я хочу вас познакомить с Intel Galileo Gen2:

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

      Intel Galileo Gen2 позиционируется как отладочная плата для изучения ключевых возможностей и особенностей Intel-платформы и не предназначена для встраивания в конечные устройства. Для применения в готовых устройствах предназначен Intel Edison (декларируется простая миграция Gilileo -> Edison).

      Galileo Gen2 поставляется в красивой (не только снаружи, но и внутри) упаковке, однако, перечень содержимого достаточно скромный:

      Собственно, внутри только сама плата Intel Galileo Gen2, источник питания (12В 1.5А, в комплекте 5 различных адаптеров под разнообразные розетки) и один листочек с важной информацией о безопасности (отпечатан ультрамелким шрифтом, записи на всех возможных языках, кроме русского).

      Кстати, в этой бумажке написано, что во время работы Intel Quark SoC может нагреваться и трогать его не рекомендуется.

      Странно, что в комплекте нет microUSB-кабеля, который требуется для работы с платой, ну да ладно – такого добра в хозяйстве любого гика достаточно.

      Внешний вид

      Размер платы Intel Galileo Gen2 составляет 124х72 мм (разъёмы чуть выступают за пределы платы):


      На фото для сравнения: Intel Galileo Gen 2, «малина» и компактная версия клона Arduino Mega.

      Основные разъемы на плате (начиная с левого нижнего угла и далее по часовой стрелке):

      • Слот для microSD-карты
      • Разъем питания (от 7 до 15В)
      • Ethernet-порт (10/100)
      • UART (6-пиновый разъем)
      • USBclient
      • USBhost
      • Разъем DEDIPROG (белый, может понадобиться, например, для восстановления после «окирпичивания»)
      • ICSP (6-пиновый разъем)

      В правой части платы также видны характерные «гребенки» для Arduino-шилдов (полностью соответствуют Arduino Uno R3). Все пины заботливо подписаны в лучших традициях Arduino-плат.

      Чуть ниже UART-разъема находится единственный джампер (IOREF) на два положения (5В и 3.3В) – он позволяет выбрать планку логических уровней, с которым будут работать подключенные шилды. Неправильный выбор напряжения может повредить как шилд, так и порты ввода/вывода Intel Galileo.

      Левее и чуть ниже SoC находится двухпиновый разъём для подключения резервной батарейки (3В) для RTC (подписан «COIN»). RTC интегрирован в процессор.

      На верхней стороне платы также находятся две кнопки: RESET (перезагрузка ардуино-составляющей) и REBOOT (перезагрузка всей системы).

      Для индикации активности на Intel Galileo Gen2 находятся 5 светодиодов (все расположены рядом с разъёмом USBhost):

      • OC (красный) – для индикации перегрузки по питанию
      • USB (зелёный) – готовность к подключению через USB
      • L (зелёный) – пользовательский светодиод (подключен к D13)
      • ON (зелёный) – питание
      • SD (зелёный) – индикация доступа к SD-карте

      Посмотрим на плату с нижней стороны:

      Первое, что бросилось в глаза – остатки флюса почти на всей нижней поверхности платы. Странно видеть подобное у именитого производителя (да ещё и с такой привлекательной упаковкой). Ну да ладно, «на скорость не влияет».

      Зато на нижней стороне платы размещён полноценный mini-PCI Express слот для возможных расширений (модули WiFi, модемы и т.п.). Рядом с ним находится 10-пиновый разъем JTAG для отладки. Там же предполагается подключать и опциональный модуль PoE (соответствующие контакты подписаны «POWER OVER ETHERNET»).

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

      Let’s go!

      Плата подобного класса для меня – большая новинка. До этого я довольно плотно работал сначала с различными ардуино-платами, а потом и просто с устройствами на базе МК atmega.

      Intel Galileo позиционируется (по крайней мере, как это декларируется в маркетинговых материалах Intel) как плата с большими возможностями linux-систем и простым прототипированием Arduino, а так же с возможностью организации взаимодействия двух этих «подсистем». Посмотрим, как обстоят дела на самом деле.

      Изучение я начну с той части, которая для меня является хорошо знакомой: Arduino. Все действия буду описывать под Mac.

      Плата в заводском состоянии (без какой-либо подготовки) уже пригодна для работы в среде Arduino (в 8Mb встроенного флеш-хранилища находится облегченная версия linux, которая обеспечивает этот функционал).

      Но «хватит откладывать – пора высиживать»: жахнем из главного калибра по воробьям (поморгаем светодиодом). Первое, что требуется – скачать и установить специальную версию Arduino IDE (доступна в Galileo Software Downloads) для своей ОС.

      Теперь, наконец-то, можно подключить саму плату. Тут есть небольшой нюанс – после подключения питание необходимо немного подождать (несколько секунд), пока система загрузится. При этом на плате последовательно загорятся два зелёных светодиода (по разные стороны от USBhost-разъёма) – только после этого можно подключать microUSB-кабель.

      Читайте также:  C windows system32 regsvr32 exe

      В Arduino IDE необходимо выбрать свою плату (в этой среде доступны варианты Intel Galileo, Intel Galileo Gen2 и Intel Edison) и появившийся после подключения платы порт. Для Mac адрес порта имеет вид: /dev/cu.usbmodemXXXXX, где XXXXX выглядит как fd121.

      В первый раз рекомендуется сделать проверку версии прошивки и обновление, если оно требуется, конечно. Моя плата такое обновление получила:

      Обновление прошивки занимает около 5 минут.

      Теперь плата полностью готова к работе. В качестве первого эксперимента загружаем «Hello World!» для МК – пример Blink. Привычно нажимаем кнопку «загрузить» и через несколько мгновений на плате начинает задорно моргать зелёный светодиод у USB-разъёма.

      Готово! Первый скетч уже работает. После перезагрузки системы – начнёт работать заново. Таким образом, можно сразу использовать Arduino-возможности платы. В Arduino IDE находятся все основные примеры и включены базовые библиотеки (со своими примерами), позволяющие быстро ознакомиться с возможностями платы и её программирования. Собственно, ничего необычного в этом пока не обнаружено – всё работает, как ожидалось (пусть и «поморгать светиком» это слишком уж просто и банально).

      Интересно, что через ардуино-составляющую можно работать с Ethernet-портом (через штатную адаптированную одноимённую библиотеку) и SD-картой. При этом не задействуются никакие пины для подключения шилдов.

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

      Все шилды я, конечно, проверять не буду (тем более, что есть вот такой документ) – под руку попался EM Shield. Этот модуль содержит популярный жк-дисплей (аналогичный Nokia 5510), две кнопки (подключенные к одному аналоговому пину), три разъёма для подключения токовых датчиков (тоже заведены на аналоговые пины) и интерфейс для подключения популярного трансивера nRF24l01+ (на ардуино используется аппаратный SPI). Цель экспресс-проверки – попробовать запустить какие-нибудь примеры из готовых библиотек, не входящих в состав «подготовленной» IDE.

      Для наглядности начал с дисплея. И библиотека LCD5110_Graph (ожидаемо) не «завелась»… Основные ошибки при компиляции: работа с регистрами напрямую. А вот если переписать соответствующие куски кода на digitalWrite() и т.п. – дисплей «оживает». Собственно, КДПВ сделана именно при этих экспериментах.

      Аналогичные проблемы (не компилируется, не работает) появились при работе с таймерами. Обнаружились проблемы и при работе с прерываниями – они (прерывания) обрабатываются, но только «при изменении» (напомню, в обычной Arduino можно настраивать прерывания «по фронту», «по спаду» и «при изменении»).

      Вероятно, есть какие-то еще особенности – проявятся в дальнейшем изучении. Пока писал этот пост, нашёл вот такой документ – в нём описаны соответствующие ограничения. Лучше их предварительно изучить, чтобы не ходить по уже известным «граблям». Особо следует обратить внимание на существенно меньшие токи с каждого пина: 16мА@5В или 8мА@3.3В (на обычной Arduino – 50мА@5В). То есть в случае чего можно запросто выжечь пин – будьте внимательны.

      Также было очень интересно, насколько быстрее Intel Galileo выполняет «стандартные» функции – например, digitalWrite(). Для этого я взял скетч blink, убрал задержки из цикла loop() и залил один скетч в ардуино (atmega328p), и аналогичный – в Galileo. Подключил осциллограф и увидел следующее:

      Первый канал (голубой) – Arduino, второй (жёлтый) – Intel Galileo.

      Получается, что плата от Intel работает примерно в четыре раза быстрее (385кГц, против 116кГц у Arduino).

      Несмотря на предупреждение, я все-таки потрогал SoC во время проведения последнего эксперимента… и практически обжег палец.


      Горячее «сердце» системы – Intel Quark SoC X1000 и две микросхемы памяти (DDR3, 256Mb).

      На сегодня всё

      Можно смело сказать, что плата от Intel (если рассматривать исключительно Arduino-составляющую) – обеспечивает такой же низкий уровень входа, как и Arduino (правда, при существенно большей стоимости платы). Но ведь это даже не половина возможностей!

      На Intel Galileo можно запустить вполне функциональную версию linux – Yocto, при этом можно использовать плату как обычный linux-компьютер. А организовав взаимодействие «linux-компьютера» и «arduino-устройства» – реализовывать гораздо более функционально-продвинутые вещи.

      В следующих частях «практикума» я постараюсь осветить и эти возможности. Продолжение следует…

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

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

      Adblock detector