Програмируем Micro:Bit
2017-08-04 20:34Два года назад Би-Би-Си объявила амбициозный проект: одноплатный компьютер для обучения младших школьников программированию и электронике. Конечно, я тут же подписался на новинку. Три дня назад я наконец получил долгожданную платку.


На видео есть неплохой подробный обзор для начинающих:
Все эти навороты с Джаваскриптом, Питоном и Blocks забавные, конечно, но для для старпёров типа меня есть традиционный способ программировать на классическом C++, под обычным Линуксом. Установка на Ubuntu делается следующим образом.


На видео есть неплохой подробный обзор для начинающих:
Все эти навороты с Джаваскриптом, Питоном и Blocks забавные, конечно, но для для старпёров типа меня есть традиционный способ программировать на классическом C++, под обычным Линуксом. Установка на Ubuntu делается следующим образом.
$ sudo apt-get install python-setuptools cmake build-essential ninja-build python-dev libffi-dev libssl-dev srecord $ sudo easy_install pip $ pip install yotta $ sudo apt-get remove binutils-arm-none-eabi gcc-arm-none-eabi $ sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa $ sudo apt-get update $ sudo apt-get install gcc-arm-embeddedСкачиваем с Гитхаба примеры:
$ git clone https://github.com/lancaster-university/microbit-samples $ cd microbit-samples $ yt target bbc-microbit-classic-gccКомпилируем пример "Hello world":
$ yt buildЗагружаем прошивку в плату, подключенную через USB:
$ cp ./build/bbc-microbit-classic-gcc/source/microbit-samples-combined.hex /media/$USER/MICROBIT/Исходный код примера "Hello world" выглядит так:
#include "MicroBit.h"
MicroBit uBit;
int main()
{
// Initialise the micro:bit runtime.
uBit.init();
// Insert your code here!
uBit.display.scroll("HELLO WORLD! :)");
// If main exits, there may still be other fibers running or registered event handlers etc.
// Simply release this fiber, which will mean we enter the scheduler. Worse case, we then
// sit in the idle task forever, in a power efficient sleep.
release_fiber();
}
