ESP32 прошивка

И так, вышла новая версия ESP.

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

Подготовка среды Arduino IDE для ESP32

Идем по Ссылке на гит https://github.com/espressif/arduino-esp32 (для красноглазых читаем README.md )

  1. Скачиваем все содержимое.
  2. В папке  arduino/hardware создаем папку espressif
  3. в нее копируем содержимое архива из гита
  4. в папке tools запускем get.py просто двойным кликом, никакой черной магии
  5. нужно добавить питон в PATH: Система > Дополнительные параметры системы > Переменные среды > доавить в строчку PATH следующее ;C:\Python27
  6. скачиваем архив https://pypi.python.org/pypi/pyserial, распаковываем
  7. в распакованной папке запускаем GIT Bash и выполняем:
  8. python setup.py install
  9. запускаем Arduino IDE, проверяем Инструменты >Плата > ESP32 Dev Module. Если такая строчка есть, то все профит. среда настроена.
  10. Создаем новый проект, компилируем,
  11. Profit.

NB: убедитесь что финальный путь у вас /hardware/espressif/esp32/tools .

NB: установка питона https://www.python.org/downloads/release/python-2712/

 

STM32 + Ubuntu + Eclipse

План следующий:

  1. поставить  ide
  2. прикрутить компилятор
  3. прикрутить прошиватор
  4. прошиться, увидеть дебаг
  5. prfit

ставим эклипс

  1. нужно скачать с сайта: http://www.eclipse.org/downloads/packages/release/Luna/SR2  подругому никак, здесь  http://help.ubuntu.ru/wiki/eclipse написано, что Ubuntu в свои паки по умолчанию поддрживает версию 3.8. нужна >4.
  2. после установки распаковываем. в папке запускаем терминал и ./eclipse – должен запуститься эклипс.
  3. если возникают ошибки с Java  то нужно установить эклипс стандартным методом потом снести и будет счастье.
    1. поставить gdb
    2. поставить gnu
  4. скачасть arm-none-eabi-gcc
  5. sudo apt-get install git
    1. git clone git://github.com/texane/stlink.git
    2. sudo apt-get install libusb-1.0-0-dev pkg-config autotools-dev dh-autoreconf
    3. скомпилировать

 

 

 

часть взято отсюда: http://we.easyelectronics.ru/CADSoft/ubuntu-eclipse-code-sourcery-openocd-j-link-arm-ili-bystryy-start-dlya-somnevayuschihsya.html

Как поставить node.js на Raspberry Pi

Установка: http://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/

Если не завелось с первого раза http://askubuntu.com/questions/575505/glibcxx-3-4-20-not-found-how-to-fix-this-error

Если не завелось со второго раза http://stackoverflow.com/questions/32563173/installing-node-js-on-raspberry-pi-2

Small Basic EV3 с чего начать

Прежде всего необходимо поставить все необходимое на свой ПК:

  • Скачать установщик Small Basic https://www.microsoft.com/en-us/download/confirmation.aspx?id=46392 (7 мб)
  • Установить. Никаких сложностей с установкой не будет, просто жмем далее пока не поставится.
  • Скачать расширение EV3 для Small Basic https://github.com/c0pperdragon/EV3Basic/releases. Кроме самого дополнения следует скачать еще и пак примеров.
  • Теперь в папке C:\Program Files (x86)\Microsoft\Small Basic у вас есть программа которую можно запустить и проверить на работоспособность.
  • Проверить что все поставилось довольно таки легко. создайте новый файл и начните писать в нем “Motor“. Программа сама подскажет вам определение этого класса и доступные функции. Это и будет значить что библиотека встала нормально.

  • Среда программирования сама по себе довольно дружелюбная и даже допускает копирование ее на другой ПК без установки.

 

Быстрый старт Nodemcu ( ESP8266 ) на Arduino

1. Качаем Arduino IDE 1.6.8 или выше.

2. Запускаем.

3. Открываем файл>настройки

4. Вбиваем в дополнительные ссылки http://arduino.esp8266.com/stable/package_esp8266com_index.json

5. Открываем Инструменты>Плата>Менеджер плат

6. Вбиваем в поисковик esp8266

7. Устанавливаем

8. Выбираем плату NodeMCU

9. Открываем пример WiFi web server

10. Вбиваем SSID и Password

11. Profit!

 

 

Оригинал: http://www.instructables.com/id/Quick-Start-to-Nodemcu-ESP8266-on-Arduino-IDE/

ESP8266 Hello world

Обзор ESP8266, с чего начать?

Wi-Fi модули с ESP8266 чипом сейчас активно набирают обороты. Есть сайт посвященный данному кристаллу.

Сами разработчики предлагают несколько вариантов своего продукта, называются ESP1-12E.

Различаются они лишь по 2м параметрам:

  • количество пинов
  • наличие/отсутствие антенны

Так вот, даже не хочу рассматривать какие-то зарезанные варианты типа ESP-01, у которого выведен только  UART.

Наибольшим функционалом обладает ESP-12E (купил здесь: http://ru.aliexpress.com/item/Free-Shipping-2pcs-lot-ESP8266-remote-serial-Port-WIFI-wireless-module-through-walls-Wang-ESP-12/32256161821.html ). Единственное, эту платку не положишь на макетку, шаг выводов 2 мм.

Для этого можно просто взять готовую платочку http://ru.aliexpress.com/item/Serial-WIFI-ESP8266-module-adapter-plate-Full-IO-port-leads-you-can-choose-the-ESP-07/32380914509.html ну или мучатся.

Ну и конечно же есть очень много готовых решений (как Arduino):

  • ESPDuino

 

  • sparkfun esp8266 thing

  • ESPresso

  • Adafruit

  • WeMos

  • Olimex

ESP8266 прошивается из под Arduino IDE

Для меня, как и для многих, наверное, будет очень важным плюсом, что его можно прошить через Arduino IDE. По этому повоу есть много статей, вот 2 например:

Свои решения используя плату

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

 

Ссылочки:

  • https://www.youtube.com/watch?v=0J1Nt4q7uCQ
  • http://www.instructables.com/id/Programming-the-ESP8266-12E-using-Arduino-software/step10/Configuring-COM-Port/
  • https://raw.githubusercontent.com/nodemcu/nodemcu-devkit/master/Documents/NODEMCU_DEVKIT_SCH.png
  • http://esp8266.github.io/Arduino/versions/2.0.0/doc/boards.html

Использование библиотек из Arduino в AVRStudio

Чтобы использовать любую библиотеку Arduino в AVRStudio необходимо совсем немногое.

Разберем структуру пустого проекта. В общем то там 2 файла. Нас интересует следующий:

У него вот такое вот содержимое:

#define __AVR_ATmega328p__
#define __AVR_ATmega328P__
#define ARDUINO 161
#define ARDUINO_MAIN
#define F_CPU 16000000L
#define __AVR__
extern "C" void __cxa_pure_virtual() {;}

//
//

#include "...\arduino\hardware\arduino\avr\variants\standard\pins_arduino.h" 
#include "...\arduino\hardware\arduino\avr\cores\arduino\arduino.h"
#include <testtest.ino>

Нам понабоится подключить 2 библиотеки. Далее смотрим структуру main.cpp (точка входа)

...\arduino\hardware\arduino\avr\cores\arduino\main.cpp

Там собственно описана вся структура работы ардуины:

#include <Arduino.h>

//Declared weak in Arduino.h to allow user redefinitions.
int atexit(void (*func)()) { return 0; }

// Weak empty variant initialization function.
// May be redefined by variant files.
void initVariant() __attribute__((weak));
void initVariant() { }

int main(void)
{
	init();

	initVariant();

#if defined(USBCON)
	USBDevice.attach();
#endif
	
	setup();
    
	for (;;) {
		loop();
		if (serialEventRun) serialEventRun();
	}
        
	return 0;
}

Попробуем создать свой проект по такому лекалу.

  • Создаем новый проект
  • Копируем из ArduinoIDE папку C:\Users\Sainquake\Desktop\arduino\hardware\arduino\avr к себе в проект рядом с входной точкой проекта (Файл в котором main)
  • Пишем следующий код в теле. Подгрузку выделеной бибилотеки нужно отключить

  • Меняем пути на которые ругается компилятор

Все. Должно скомпилироваться.

Тестируем

Добавляем следующий код:

void setup(void){
	pinMode(13, OUTPUT);
}

void loop(void){
	  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
	  delay(1000);              // wait for a second
	  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
	  delay(1000);              // wait for a second
}

Добавляем библиотеки ваеринга:

#include "avr\cores\arduino\wiring.c"
#include "avr\cores\arduino\wiring_digital.c"

В них опять нужно поменять путь к pins_arduino.h

#include "C:\Users\Sainquake\Documents\Atmel Studio\6.2\GccApplication1\GccApplication1\avr\variants\standard\pins_arduino.h"

Компилируем, прошиваем. У меня нет программатора, так что я пользуюсь бутлоадером Arduino и прогой XLoader.

Результат следующий

 

 

MyRIO Hello world

Первый запуск myRIO.

Вся необходимая инфа есть на следующей тсраничке: http://www.ni.com/product-documentation/14603/en/.

Если подробнее, то на той же самой страничке есть ссылка на установщик всего необходимого для работы с устройством. http://www.ni.com/download/ni-myrio-software–2015/5727/en/

Нужно установить хотя бы базовый комплект. Приготовьтесь – это 5.5 ГБ. Но никаких граблей не выявил.

Get Started

После установки можно подключать устройство к ПК. Он найдет драйвер и попросит зарегистрировать устройство и привязать к учетной записи.

Первое что нужно сделать далее – это обновить прошивку. Он сам предложит это сделать сам. Ждем. И после установки запускаем программу Launch Getting Started Wizzard. Появится следующее окошко:

В нем в активном режиме будут ворочаться показания акселерометра с возможностью помигать светодиодиками.

Теперь сделаем свой первый проект.

Hello World!

Жмем на Go To LabVIEW и создаем простой проект myRIO. Появляется следующее окно:

При двойном клике по нему появится его программа:

Добавим отображение состояния кнопки button0.  Переходим обратно в фронтовую панель (это где серая панель в клеточку). Находим раздел Silver:

Выносим индикатор в рабочую область.

Переходим обратно в заднюю панель. И находим Кнопку в закладке myRIO.

Нужно создать следующую конструкцию:

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

В качестве задания:

Попробовать связать выключатель на панели и светодиод на myRIO.