Micro:bit 硬件架构介绍
Micro:bit做为当红的少儿编程工具,这两年在编程教育领域越来越火。今天就从硬件架构开始,分享Micro:bit的相关主题。

Microbit 硬件设计是根据ARM mbed技术所开发的应用IC及相干周边功能所设计出来的!另外有一颗接口IC 用来处理USB 接口及拖拉式核心软件更新法.这接口IC 并未用来链接任何周边.
两部分关键信息可以一窥Microbit 的内部设计:
· 线路图(schematics,http://tech.microbit.org/hardware/schematic/ ), 可以看到主要零件的链接方式及设计.
· 参考设计及相关模块数据(referencedesign,
http://tech.microbit.org/hardware/reference-design/ ), 这部分的数据可以帮助进一步了解Microbit 的设计及变动性
硬件相关说明
nRF51 应用处理器IC
nRF51 应用处理器IC是让使用者作主要程控的处理器,完整的程序包含了用户客制及中介层(runtime) 及蓝芽协议层(Stack),(译者注:浏览器编译环境会在用户程序写完同时,将这三部分整合完成) 一旦用户将完整程序(HEX 文件)放在USB 闪存根目录上,处理器便会直接执行程序代码。使用者也可对连接在这处理器上的GPIO去做控制. 也可透过2.4GHz 无线去做相关周边的控制.
|
项目 |
说明 |
|
Model |
Nordic nRF51822-QFAA-R rev 3 |
|
Core variant |
ARM Cortex-M0 32 bit processor |
|
Flash ROM |
256KB |
|
RAM |
16KB |
|
Speed |
16MHz |
|
Debug |
SWD, jlink/OB |
|
More Info |
http://tech.microbit.org/software/ |
蓝芽通讯
板子上2.4G无线相关设计提供了对手机平板的蓝芽通讯功能
|
项目 |
说明 |
|
Stack |
Bluetooth 4.1 with Bluetooth low energy |
|
Band |
2.4GHz ISM (Industrial, Scientific and Medical) 2.4GHz..2.41GHz |
|
Channels |
50 2MHz channels, only 40 used (0 to 39), 3 advertising channels (37,38,39) |
|
Sensitivity |
-93dBm in Bluetooth low energy mode |
|
Tx Power |
-20dBM to 4dBm in 4 dB steps |
|
Role |
GAP Peripheral |
|
Congestion avoidance |
Adaptive Frequency Hopping |
|
Profiles |
https://lancaster-university.github.io/microbit-docs/ble/profile/ |
|
More Info |
http://tech.microbit.org/bluetooth/ |
无线通信
板子上2.4G无线相关设计提供另外的无线通信协议(Nordic Gazell),这通讯协议已经在不同的程序语言环境可以直接使用,并且可以在多个microbit 装置中互相传递并且群组化(group code ).
|
项目 |
说明 |
|
Protocol |
Nordic Gazell |
|
Freq band |
2.4GHz |
|
Channel rate |
1Mbps or 2Mbps |
|
Encryption |
None |
|
Channels |
101 (0..100) |
|
Group codes |
255 |
|
Tx power |
Eight user configurable settings from 0(-30dbm) to 7 (+4dbm) |
|
Payload size |
32 (standard) 255 (if reconfigured) |
|
More Info |
https://lancaster-university.github.io/microbit-docs/ubit/radio/ |
按键
Microbit 正面有两个按钮,背面有一个。背面的按键连接至KL26 接口IC及 nRF51 处理器做系统重制用(reset)
正面的按键A 、 B 是可以由使用者去做程控包括了短压、长压或是A、B同时按,按键A、B 均连接至金手指(edge connector)上的GPIO ,加上电路设计可以做logic 0 或 1值的操作.
|
项目 |
说明 |
|
Type |
2 tactile user buttons, 1 tactile system button |
|
Debounce |
(A & B) software debounced, 54ms period |
|
Pullup |
(A & B) external 4K7, (System) 10K |
显示
在板子上有5x5 数组LEDs.做为显示屏,microbit 是以3x9 数组电路去控制它.并用很高的速度去刷新它。
|
项目 |
说明 |
|
Type |
minature surface mount red LED |
|
Physical structure |
5x5 matrix |
|
Electrical structure |
3x9 |
|
Intensity control |
10 steps |
|
Intensity range |
TBC |
|
Sensing |
ambient light estimation via software algorithm |
|
Sensing Range |
TBC, 10 levels from off to full on |
|
Colour sensitivity |
red centric, red is 700nm |
重力传感器(加速度传感器)
重力传感器是经由I2C 跟处理器连结,并提供了三轴的感应数据并包含了手势感测的算法 (like : fall detection, logo-up, logo-down, shake)
|
项目 |
说明 |
|
Model |
Freescale MMA8653FC |
|
Features |
3 axis, 2/4/8g ranges |
|
Resolution |
10 bits (0..1023) |
|
Max output data rate |
800Hz |
|
On board gestures |
‘freefall’ |
|
Other gestures |
Other gestures are implemented by software algorithms in the runtime. |
磁力传感器
磁力传感器也是透过I2C 跟处理器连结,提供了磁力感测数值,并提供指南针功能,(The compass must be calibrated before use, and the calibrationprocess is automatically initiated by the runtime software –译者对这段有些疑虑,暂不翻译)
|
项目 |
说明 |
|
Model |
Freescale MAG3110 |
|
Max update rate |
80Hz |
|
Full Scale range |
1000uT |
|
Sensitivity |
0.10uT |
温度感测
nRF51 处理器提供了板子上的实时温度感测(Runtime ambient temperature sensing ).
|
项目 |
说明 |
|
Type |
on-core nRF51 |
|
Sensing range |
-25C .. 75C |
|
Resolution |
0.25C steps |
|
Accuracy |
+/-4C (uncalibrated) |
|
More Info |
https://lancaster-university.github.io/microbit-docs/ubit/thermometer/ |
数字输入输出(GPIO)
金手指 (edge connector) 上有许多 GPIO 。处理器上有许多的多任务讯号针脚(pin define),有些已经设定成GPIO 功能连接至金手指,如何进一步使用这些针脚请参阅 (nRF51 data sheet)
|
项目 |
说明 |
|
Rings |
3 large IO rings and two large power rings, 4mm plug and crocodile clip compatible |
|
GPIO features |
19 assignable GPIO pins |
|
2 are assigned to the on board I2C interface |
|
|
6 are used for display or light sensing feature |
|
|
2 are used for on board button detection |
|
|
1 is reserved for an accessibility interface |
|
|
19 may be assigned as digital input or digital output |
|
|
19 may be assigned for up to 3 simultaneous PWM channels |
|
|
19 may be assigned for 1 serial transmit and 1 serial receive channel |
|
|
6 may be assigned as analog input pins |
|
|
3 may be assigned to an optional SPI communications interface |
|
|
3 may be assigned for up to 3 simultaneous touch sensing inputs |
|
|
ADC resolution |
10 bit (0..1023) |
|
Edge Connector |
http://tech.microbit.org/hardware/edgeconnector_ds/ |
|
Pitch |
1.27mm, 80 way double sided. |
|
Pads |
5 pads, with 4mm holes |
|
More Info |
http://tech.microbit.org/hardware/edgeconnector/ |
电力供应
给microbit的电力,主要是由接口IC透过USB 提供,亦可由电池盒连接器提供,在金手指上亦有电力供应的功能,需要熟悉电路设计的人操作.
|
项目 |
说明 |
|
Operating range |
1.8V .. 3.6V |
|
USB current |
120mA max |
|
Onboard Peripherals budget |
30mA |
|
Battery connector |
JST X2B-PH-SM4-TB |
|
Battery current |
TBC |
|
Max current provided via edge connector |
90mA |
|
More Info |
http://tech.microbit.org/hardware/powersupply/ |
界面
这接口IC提供USB链接功能、拖拉式程序刷新(drag and drop flash program)及跟主计算机做序列通讯(serialcommunication) .
|
项目 |
说明 |
|
Model |
Freescale MKL26Z128VFM4 |
|
Core variant: |
ARM Cortex-M0+ |
|
Flash ROM |
32KB |
|
RAM |
4KB |
|
Speed |
16MHz |
|
Debug capabilities |
SWD |
|
More info |
http://tech.microbit.org/software/daplink-interface/ |
USB通讯
|
项目 |
说明 |
|
Connector |
USB micro, MOLEX_47346-0001 |
|
USB version |
1.1 Full Speed device |
|
Speed |
12Mbit/sec |
|
USB classes supported |
Mass Storage Class (MSC) |
|
Communications Device Class (CDC) |
机构
我们有提供2D 跟3D CAD 图文件,这些资料可以用来提供3D printing 的生产制造的图文件数据.
|
项目 |
说明 |
|
Dimensions |
5cm(w) 4cm(h) |
|
Weight |
5g |
原文链接
https://mp.weixin.qq.com/s?__biz=MzU0MTg0ODIzNA==&mid=2247483907&idx=3&sn=bef5bb1d947ac09c6355114c78abadef&chksm=fb22e5c6cc556cd090116d3e53dcea9d99b94d27e5fd1d960bfe50399d782ad685bbc2823093#rd

Micro:bit 硬件架构介绍的更多相关文章
- 多核CPU硬件架构介绍
转自:http://book.51cto.com/art/201004/197196.htm SISD.MIMD.SIMD.MISD计算机的体系结构 1. 计算平台介绍 Flynn于1972年提出了计 ...
- MindSpore Lite整体架构介绍
MindSpore Lite整体架构介绍 MindSpore Lite框架的总体架构如下所示: 前端(Frontend): 负责模型生成,用户可以通过模型构建接口构建模型,将第三方模型和MindSpo ...
- MemSQL分布式架构介绍(一)
最近在了解MemSQL架构,看了些官方文档,在这里做个记录,原文在这里:http://docs.memsql.com/latest/concepts/distributed_architecture/ ...
- 微控制器(MCU)架构介绍
微控制器(MicroController)又可简称MCU或μC,也有人称为单芯片微控制器(Single Chip Microcontroller),将ROM.RAM.CPU.I/O集合在同一个芯片中, ...
- python网络编程之C/S架构介绍
标签(空格分隔): c/s架构介绍 什么是C/S架构 C指的是client(客户端软件),S指的是Server(服务端软件),后续我们可以试着写个c/s软件实现服务器软件与客户端软件基于网络通信: 计 ...
- 深入GPU硬件架构及运行机制
目录 一.导言 1.1 为何要了解GPU? 1.2 内容要点 1.3 带着问题阅读 二.GPU概述 2.1 GPU是什么? 2.2 GPU历史 2.2.1 NV GPU发展史 2.2.2 NV GPU ...
- MindSpore整体架构介绍
MindSpore整体架构介绍 MindSpore框架架构总体分为MindSpore前端表示层.MindSpore计算图引擎和MindSpore后端运行时三层. MindSpore前端表示层(Mind ...
- A100 GPU硬件架构
A100 GPU硬件架构 NVIDIA GA100 GPU由多个GPU处理群集(GPC),纹理处理群集(TPC),流式多处理器(SM)和HBM2内存控制器组成. GA100 GPU的完整实现包括以下单 ...
- CUDA01 - 硬件架构、warp调度、指令流水线和cuda并发流
这一部分打算从头记录一下CUDA的编程方法和一些物理架构上的特点:从硬件入手,写一下包括线程束的划分.流水线的调度等等微结构的问题,以及这些物理设备是如何与软件对应的.下一部分会写一下cuda中的几种 ...
随机推荐
- 相机姿态估计(Pose Estimation)
(未完待续.....) 根据针孔相机模型,相机成像平面一点的像素坐标p和该点在世界坐标系下的3D坐标P有$p=KP$的关系,如果用齐次坐标表示则有: $$dp=KP$$ 其中d是空间点深度(为了将p的 ...
- CssSelector之selenium元素定位
CssSelector是我最喜欢的元素定位方法,Selenium官网的Document里极力推荐使用CSS locator,而不是XPath来定位元素,原因是CSS locator比XPath loc ...
- C/C++判断文件/文件夹是否存在 转
一.判断文件夹是否存在: 1.用CreateDirectory(".//FileManege",NULL);如果文件夹FileManege不存在,则创建. 2.或者 ...
- MySQL---视图、触发器
一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( S ...
- java枚举常见用法
用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...
- 1.Python是什么
前言 这里只是根据个人的理解而谈,庸俗浅薄,不是科学定义,也可以认为是假装自己理解啦,掩耳盗铃罢了.知无涯是多么的恐怖,哈哈 计算机语言 此处的语言不同于我们生活中所说的语言,因为生活中的语言 ...
- Python(1-8天总结)
day1:变量:把程序运行过程中产生的中间值.暂时存储起来.方便后面的程序调用.变量命名规范:常量:所有字母大写注释:数据类型: 1. int 整数 2. str 字符串. 不会用字符串保存大量的数据 ...
- ruby 爬虫爬取拉钩网职位信息,产生词云报告
思路:1.获取拉勾网搜索到职位的页数 2.调用接口获取职位id 3.根据职位id访问页面,匹配出关键字 url访问采用unirest,由于拉钩反爬虫,短时间内频繁访问会被限制访问,所以没有采用多线程, ...
- 单片机-C语言-定义和申明
以下代码是单片机程序,51单片机,编译器为HT-IDE3000, 简单来说 头文件中只能申明, 变量在头文件中申明时,要加上extern 这个关键字用来告诉编译器,变量在其它的文件中定义,为什么要在头 ...
- 20145234黄斐《Java程序设计》第七周学习总结
教材学习内容总结 Lambda语法 Lambda去可以重复,符合DRY原则,而且Lambda表达式可读性更好,操作更简单 匿名类型最大的问题就在于其冗余的语法,lambda表达式是匿名方法,它提供了轻 ...