micro:bit 软件生态系统介绍

micro:bit 软件生态系统介绍

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

Microbit Shop

Overview

在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 of pxt (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 the micro:bit. please add any you know about that are not here,原文中并未指出如何通知,所以在这将原文列出)

从程序环境到 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-SDK mbed 是建构在Nordic nRF51-SDK的上层, 由 Nordic 发展的组件可以帮助程序人员使用它们的硬件。
  • MicroPython interpreter 若你是使用python的程序人员 ,它是用micro python 及mbed 开发出来的,所以microPython 是可以使用在许多不同硬件平台

Micro:bit 中文台湾

时间: 2024-10-14 06:24:21

micro:bit 软件生态系统介绍的相关文章

谈谈在 .Net 平台上的 软件生态 和 软件生产力

我们可以先看看这篇文章 : <看 StackOverflow 如何用 25 台服务器撑起 5.6 亿的月 PV>    http://www.nowamagic.net/librarys/news/detail/1813 物理机 也好 , 虚拟机 也好 , 用哪种都可以 . 你喜欢用哪种就用哪种 .  ^^ 我之前说过 , 用 分布式缓存 作为 共享内存 来 构建集群 是 过去若干年到现在的 事实上的做法 . 这种做法 成本不高 , 容易普及 , 直观易用 . 我们通常说的 "集群治

hadoop生态系统介绍

hadoop生态系统如下图所示: HDFS: HDFS(Hadoop Distributed File System)是分布式文件系统,是针对谷歌开发的分布式文件系统GFS(Google File System)的开源实现,是Hadoop两大核心组成部分之一. HDFS有NameNode和DataNode两部分,NameNode是整个文件系统目录,基于内存存储,存储的是一些文件的详细信息,比如文件名.文件大小.创建时间.文件位置等,有且仅有一个:DataNode存储文件的数据信息,也就是文件本身

巨杉数据库与深度操作系统合作共建基础软件技术生态

近日,巨杉数据库与深度操作系统完成互认证工作,建立全面技术合作,共同推进国内基础软件生态的建设. 经双方共同严格测试,SequoiaDB 巨杉数据库与深度操作系统ARM服务器版软件V15共同稳定运行,安全可靠,性能卓越,相互兼容,可为企业级应用提供全面保障. SequoiaDB 巨杉数据库是一款完全自研的,金融级分布式关系型数据库,其自研的原生分布式存储引擎支持完整 ACID,具备弹性扩展.高并发和高可用特性,支持 MySQL, PostgreSQL 和 SparkSQL 等多种 SQL 访问形

软件众包是怎样的一个模式?

什么是软件众包?众包模式又是怎么样的?某论坛上,有人是这样讲解的,众包模式下的劳动者工作时间相对灵活,利用闲暇时间参与众包活动,自主安排劳动时间.劳动者从固定的工作时间中被解放出来,获得了身心解放.他们跨越年龄界限.空间界限和阶级隔阂,企业组织边界延伸了,其创意源.创新源扩大了. 众包和共享经济之所以得到如此迅速的增长,是因为越来越多的企业也开始倾向于利用互联网将工作发包出去,利用志愿员工的创意和能力来达到企业节约成本和集思广益的目的.而得益于智能手机的普及,人们之间的互联便捷性得到了较大提升,

三星电子能从硬件公司转型成软件公司吗?

船小好调头是公认的真理之一,尤其是对企业来说,体型越小,越容易调整业务的转换和中心和未来发展方向.但对于那些巨头企 业来说,错综复杂的关系链.人际关系.蛛网交缠的业务等,导致转型时就会显得步履维艰.别说是尽快转型后重回霸主轨道,甚至会因为脚步的蹒跚,导致被对手超越.不转型=与时代脱节,导致最后产生疲态:转型=难度翻N倍,一弄不好,就会对自身造成重创. 当下,三星电子就面对着这样一个两难的境地.传统的硬件业务虽然还表现地较为强势,但从长远来看,已经有极大风险,尤其是移动业务.而如果向软件型公司转型

cad软件哪个好用,谢谢介绍一下

1. 高版本有标准件库 选好规格就行了 直接出的 效率比老版不知道要提高多少倍了宁愿用04 04再经典也不能一直用的 自己画?我说你们累不累啊 简化? 变的更有效率了 你有没有用过新版的啊 再说 这个朋友没用过的话 新接触 哪来所谓的习惯这个只是针对楼上的说正题 有很多CAD软件 PROE UG CATIA INVENTOR SW等ACAD也算吧其中 acad功能最差 但最容易上手 用来入门的 但可以跳过其他 SW(solidworks)容易上手 功能没前面四个强 属于中端 和INVENTOR一

核心思想:API造就生态环境

作者:LawrenceJing链接:http://www.zhihu.com/question/22308200/answer/20974424来源:知乎著作权归作者所有,转载请联系作者获得授权. 以另一种视角来看,就说说软件生态环境吧(大多是iOS软件). Byword.iA Writer.PlainText等文本编辑软件直接同步到Dropbox: IFTTT有Dropbox的Channel,随便搞几个规则,什么都可以自动往Dropbox里放: PDF expert有Dropbox的实时同步(

屌丝程序猿,软件攻城师发家机会:用大数据来做生意

大数据本身不产生价值,如何分析和利用大数据对实际业务产生帮助才是关键;从事大数据的生意要重视投入与产出;许多人已经默默地通过大数据获利. 1.分析微博数据炒股 “过去往往是把数据静止到程序当中分析,但现在不可能等它停下来.”中国工程院院士邬贺铨表示,数据规模越大,处理的难度也越大,但对其进行挖掘可能得到的价值更大,这就是大数据热的原因.华尔街德温特资本市场公司分析全球3.4亿微博帐户留言,判断民众情绪,高兴买股票,焦虑抛售股票,判断全世界高兴的多还是焦虑多,从而判断股票抛售情况.该公司当年第一季

阿里云与WPS深度合作,开放数据处理生态

摘要: 在3月28日举行的2018云栖大会-深圳峰会上,阿里云与金山办公达成深度合作,WPS在线预览与格式转换能力落地阿里云.标志着阿里云存储开放的数据湖体系不但面向计算引擎,还面向应用开放. 在3月28日举行的2018云栖大会-深圳峰会上,阿里云与金山办公达成深度合作,WPS在线预览与格式转换能力落地阿里云. 当前整个企业级数据管理市场面临着数字化转型,如何更好的管理数据.挖掘非结构化数据(专业文档.视频.图像等)的价值是当前企业需要解决的问题.阿里云作为驱动数字中国的核心力量,正与更多的合作