Jump to content

DFRobot Curie Nano


Recommended Posts

Кроме классических 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.

 

Link to comment
Share on other sites

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Сообщения

    • Смотрим на микросхему шима и от этого пляшем. 
    • Фото облегчат понимание с чем имеем дело. Названий у одного и того же может быть много. А, сделано на одном из двух китайских заводов.
    • вот за это реально спасибо, не знал о его существовании, теперь скачал и действительно отпал вопрос по этими резисторами
    • А операционник tl074 подойдёт вместо tl084? Давно не смотрел. Увидел в первом посту что можно. А сообщение не могу удалить.удалите
    • @Tatv Поищите по форуму по запросу "электростимулятор" - несколько раз уже всплывали похожие запросы. Программа будет весьма простой, так что 99% микроконтроллеров подойдут - выбирайте что по душе/с чем есть опыт. А по поводу 2 режимов работы - можно вообще в лоб решать такую проблему - сделать в приборе два независимых блока формирования напряжений, и релюшкой их переключать.
    • Здравствуйте, прошу прощения если темой форума ошибся. Передо мной стоит задача- разработать компактный носимый прибор для транскраниальной электростимуляции. Если кратко про принцип работы - он должен стимулировать определенные участки мозга небольшим током, что стимулирует выработку неких бета- эндорфинов, которые необходимы для восстановления нервной системы, а затем организм частично восстанавливается сам. В основном в готовых приборах применяется один из типов тока - постоянный или переменный. Но мне необходимо уместить в этом приборе оба. Изучив множество статей по разработке таких приборов, стало ясно, что никто прежде подобным не занимался. Из-за этого есть несколько вопросов по будущей схеме. Я приложил наспех сделанную структурную схему предполагаемого прибора, а также его алгоритм работы. Вопросы у меня следующие: 1. Возможно ли каким то образом реализовать параллельные схемы формирования необходимого тока для разных типов тока? Проблема тут в том, что для переменного тока необходимо будет задействовать генератор, который должен формировать биполярные прямоугольные импульсы частотой около 70 Гц. А для постоянного тока генератор не нужен, там должен быть задействован только источник тока и схема переключения( данная схема будет менять анодный и катодный электрод между собой - в зависимости от режима работы). 2. Какой микроконтроллер мог бы сюда подойти под данные задачи( единственное что из требований мне известно - он должен быть простым и с небольшой памятью, ну и соответственно иметь интерфейсы для работы с дисплеем, кнопками и динамиком)? И необходимо ли задумываться о количестве встроенных таймеров в него?  Если важно знать параметры тока , то для стимуляции переменным током необходимо 0.2-1.5 мА, а для постоянного тока максимум 2 мА. Ну и еще есть вопрос по схемам защиты - какие точно необходимо будет установить для защиты пациента? Я понимаю, что тема довольно узконаправленная, но ответы на данные вопросы найти так и не удалось самостоятельно. Если что нибудь подскажете - буду очень благодарен).
    • Сначала надо найти схему своего прибора, и чуть по тыкаться... Не боги горшки обжигают.  Ц4353 - мой любимый прибор.  Я так научен, без схемы не могу. Свой купил за 500 руб. Восстановил. В коллекции. Рабочий. У Ц4353 болезнь защиты в реле защиты - размагничивается  магнит, имейте  это в виду.
  • Similar Content

×
×
  • Create New...