micro:bit 软件生态系统介绍

micro:bit 软件生态系统介绍

这里有大量的软件平台及工具使得许多microbit计划顺利的进行,这篇文章只是做概略介绍而希望要进一步了解可以到不同计划的专页得到更多的数据.

Microbit Shop

Overview

·High Level Programming Languages高阶程序语言

oCompiled Languages编译语言

oInterpreted Langauges直译语言

·Coding environments and IDEs程序环境及整合接口

·From Coding Environment to micro:bit从程序环境到microbit

·micro:bit Low Level (C/C++) Software

Stack底层软件架构

在microbit软件分成在microbit (Target Computer如下图右边)上执行的及主计算机(Host Computer如下图左边)上两类:

一般程序写好后透过USB转到micro:bit,整个流程由两个芯片完成,一是KL26Z负责程序刷新(code flashing),另一nRF51822则执行完成用户完成的程序。

高阶程序语言

Microbit的高阶程序语言分成编译及直译两类(但译者若以实际的程序执行环境目前都是"编译”── 将用户程序编译后结合底层已有bytebode,成为完整执行程序),原文便保留

The ‘high level’ programming languages for the

micro:bit break down into two broad categories

·Compiled languages: your

program is compiled to ARM assembler or some other kind of bytecode before

being copied onto the micro:bit.

·Interpreted Languages: both

your script and an interpreter for it are copied onto the micro:bit. Because the

interpreter is on the micro:bit itself, these langauges typically also allow

you to program the micro:bit ‘live’ over USB by typing commands.

编译语言

C/C++, while certainly compiled, is not considered a high-level language

in this context

为了可以确定在线的编译环境可支持一百万片microbit的板子,微软用TypeScript写了浏览器版编译程序,在这编译程序上微软使用了以下的技术 :

·Blocks (at microbit.co.uk)

·TouchDevelop

·CodeKingdoms Javascript (at

microbit.co.uk)

·Blocks and Javascript as part

ofpxt(at pxt.microbit.org)

整个完整流程说明在浏览器编译页面In browser compiler,更细部令人惊艳的细节在TouchDevelop in 208 bits.

浏览编译程序不会编译整个程序,只有用户编写的部分,其他底层执行的部分已经预先用mbed编译好,并整合进在线编译程序。当用户编写完他的程序,编译程序便会编译并结合底层软件,让用户下载!

.

直译语言

在microbit.co.uk正式的编译程序中,只有Python是直译的。这是用MicroPython直译器项目所完成,细部数据可以MicroPython的连结中找到。

另外还有Javascript直译器项目port of the Javascript interpreter Espruino支持microbit!

程序环境及整合接口

这里有许多程序环境可让用户对microbit做不同层面的程序设计.

较普遍的编译环境都列在https://microbit.org/code,脱机的编译环境有Mu offline Python editor

这里已经尽可能将micro bit相关的编译环境列出来,若你有知道,但不在这上面的,请让我们知道(Here’s a non-exhaustive list of possible code editors for use with themicro:bit.please add any you know about that are not here,原文中并未指出如何通知,所以在这将原文列出)

·microbit.co.uk editors based

on TouchDevelop backend:

oCode Kingdoms Javascript

oMicrosoft Blocks

oMicrosoft TouchDevelop

oPython

·mbed Online Compiler

·Mu offline Python editor

·PXT for micro:bit(successor

to the TouchDevelop-based editors above)

从程序环境到micro:bit

每一个编译环境都会产生一个.hex的档案,这是microbit可以认得的格式。由于主计算机会将Microbit认为是USB随身碟(是由DAPLink模拟出来),当编译出来Hex檔拖拉至microbit。当闪灯结束,程序便开始执行。

另一"刷程序"(flash’ code)是用手机AP透过蓝芽传输至micro:bit,更多的信息请参考here,有关蓝芽手机程序更多信息请参考here

micro:bit底层软件架构

当你为microbit写完你的应用程序,刷你的程序进microbit。这hex档除了包含你写的部分也包含了许多底成软件模块,这些软件模块在底下一、一做介绍:

·the micro:bit Runtime(有时称这部分为装置抽象层),是由Lancaster University用C++写成。装置抽象层形成不同语言共同使用的部分,但在不同语言下使用的频繁度及包装的紧密度不同。(有兴趣的读者可以用以下列处的链接下载语言编译程序的程序代码研究,或初步去看各语言的reference作了解)

·ARM mbed这部分提供了mbed对不同ARM based MCU的周边有标准的SDK,这也包含了BLE的抽象层及API,这也代表的microbit的软件可以执行在其他的mbed支持的硬件上

·Nordic nRF51-SDKmbed是建构在Nordic nRF51-SDK的上层,由Nordic发展的组件可以帮助程序人员使用它们的硬件。

·MicroPython interpreter若你是使用python的程序人员,它是用micro python及mbed开发出来的,所以microPython是可以使用在许多不同硬件平台

Micro:bit

中文台湾

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,752评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,100评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,244评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,099评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,210评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,307评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,346评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,133评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,546评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,849评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,019评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,702评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,331评论 3 319
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,030评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,260评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,871评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,898评论 2 351

推荐阅读更多精彩内容