Главная » Arduino
Призовой фонд
на октябрь 2020 г.
1. 1500 руб
Сайт Паяльник
2. Тестер компонентов MG328
Сайт Паяльник
3. 150 руб.
От пользователей


Мультиметр ANENG AN8009

DFRobot Curie Nano

Кроме классических Arduino с микроконтроллерами Atmel существуют так же платы, в основе которых лежат другие микроконтроллеры. Одной из таких ардуин является модель 101, в основе которой находится Intel Curie. Выглядит она так:

image1.jpeg.93b55efc1afed7fab5d913ee4ea30053.jpeg

Поскольку ардуино это проект открытый, то изготавливать совместимые платы может кто угодно, иногда изменяя схему.

Так вот, у компании DFrobot свой взгляд на arduino 101. Представляю вашему вниманию DFRobot Curie Nano.

image2.thumb.jpeg.c225f8447ca38d4a4cd4b15a059dcaaf.jpeg

image3.thumb.jpeg.50ac67993242d94925fade0ddc71a0ae.jpeg

Для сравнения приведу фото этой платы с некоторыми другими (леонардо, esp32, NodeMCU). Плата довольно компактна.

image4.jpeg.d5c50e3726f47fd8a60e5a2fb0f392e5.jpeg

Не вижу смысла перепечатывать характеристики микроконтроллера из даташита , просто приведу содержимое первой страницы.

image2.thumb.png.80b09c8d254d0f399b52b6733f6fefe2.png

расположение и назначение выводов DFRobot Curie Nano представлено на следующем изображении.

image3.png.4d1f375466571db9e58138ed9841cd42.png

Итак, на борту 32-битный микроконтроллер, работающий на частоте 32 мегагерца. Есть встроенный 6-осевой акселерометр, Bluetooth, часы реального времени. То есть микроконтроллер изначально задуман для создания носимых умных устройств. К тому же DFRobot Curie Nano меньше по размеру, чем arduino 101.

Для программирования DFRobot Curie Nano можно использовать фирменную IDE от Intel (но я её не прбовал), либо ArduinoIDE. На ArduinoIDE я и остановлюсь.

Что бы ArduinoIDE могла работать с Curie, необходимо добавить поддержку этого микроконтроллера в «менеджере плат».

image4.png.af60f086a8e89c4fb8abd844249c54ad.png

Всего необходимо скачать чуть менее 200 мегабайт. На скриншоте только один из скачиваемых пакетов.

image5.png.5dbbe5d8c1e532c31fd2ff5013f9d271.png

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

image6.png.bd3fa59eda4b602ec4495ac364117c3b.png

Вот и вся установка.

Стоит отметить, что работа с ардуино 101 (и соответственно с DFRobot Curie Nano) ничем не отличается от других плат ардуино, построенных на микроконтроллерах AVR. Дело в том, что с "ядром" Intel Curie Boards устанавливаются библиотеки, которые заменяют встроенные в ArduinoIDE библиотеки (Wire, SPI, EEPROM, servo и так далее). Кроме того, в комплект пакета поддержки входят библиотеки, специально предгазначенные для микроконтроллера Intel Curie - CurieBLE для работы с bluetooth, CurieI2S, CurieIMU для работы со встроенным датчиком положения, power для спящего режима, CurieTime для работы со встроенным RTC, CurieTimerOne в пояснениях не нуждается.

Для прошивки микроконтроллера отведено 155682 байт, это больше чем у большинства микроконтроллеров AVR, используемых в платах ардуино. Но, одна и та же программа может занимать разный объем в микроконтроллерах разной архитектуры. Я решил сравнить объем программ, компмллируемых для Intel Curie и ATmega 328p (arduino nano). Итак...

5af1f1454d48e_.PNG.ca048bdaae824ca10135ae2026fae7b0.PNG

С ATmega328p всё закономерно, больше объем скетча - больше памяти занимает скомпилированный код. А вот с Intel Curie не все так просто. Даже пустой скетч занимает 31% памяти. Но далее с ростом скетча рост скомпилированной программы значительно меньше, чем у ATmega328p.

На данном примере я покажу совместную работу встроенной в ядро Intel Curie библиотеки и библиотеки U8g2. Это скетч простых часов, которые выводят данные на дисплей.

#include <CurieTime.h>
#include <U8g2lib.h>

U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0,U8X8_PIN_NONE);

char c_time[10];

void setup() {
 u8g2.begin();
}

void loop() {
int i_hour=hour(); //получаем время: час,
int i_minute=minute(); //минуты,
int i_second=second(); //секунды и помещаем их в соответствующие переменные


String s_time = String(i_hour) + ":" + String(i_minute) + ":" + String(i_second); //конактенация и одновременный пере
s_time.toCharArray(c_time, 10); //преобразование переменной типа string в тип char

 u8g2.firstPage(); //вывод данных на дисплей
 do {
 u8g2.setFont(u8g2_font_ncenB14_tr); //выбор шрифта
 u8g2.drawStr(30, 36, c_time); //эта функция может вывести только значение переменной типа char
 }
  while ( u8g2.nextPage() );
}

image5.jpg

Создатели arduino 101 хорошо поработали над совместимостью исходного кода, предназначенного для микроконтроллеров AVR, с микроконтроллером Intel Curie. То есть, большинство сторонних библиотек, написанных для arduino, совместимы так же и с DFRobot Curie Nano.

Подробно рассматривать библиотеки, поставляемые с ядром Intel Curie, я не буду. Так как примеров, поставляемых с ядром, достаточно для понимания их работы. Отдельного внимания заслуживает библиотека CurieBLE и собственно работа с BLE, но это тема отдельной статьи.

Кроме того, на базе Curie Nano можно построить нейронную сеть при помощи Curie's neuron SDK, вот только библиотека платная и стоит 19$.

P.S. DFRobot Curie Nano мне очень понравилась. Уже есть огромный план по использованию этой платы по назначению, то есть для создания носимого устройства с применением возможностей микроконтроллера Intel Curie (часы с навигацией и расчетом астрономических событий для туристов и фотографов)

Отдельная благодарность магазину dfrobot.com за предоставленную на обзор DFRobot Curie Nano.

Теги:

Опубликована: 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

УФ датчик пламени Honeywell C7061A1020

Комментарии (2) | Я собрал (0) | Подписаться

0
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
0
andro #
Интересная и весьма необходимая вещь для построения часов с навигацией и расчетом астрономических событий для туристов и фотографов. Будет интересно почитать про их сборку, надеюсь после сборки поделитесь материалом. Данная же статья получилась лаконичной и понятной, без лишних слов. Спасибо автору!
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Модуль измерения тока на ACS712 (30А)
Модуль измерения тока на ACS712 (30А)
200 Вт усилитель класса D на IRS2092 Ручной фен 450 Вт с регулировкой температуры
вверх