Micro Bit

(也叫做,或风格化为)是基于ARM架构單板電腦,由英國廣播公司(BBC)设计,用于英国的计算机教育。

BBC micro:bit
BBC micro:bit v1版的背面。
研發商BBC Learning, BBC R&D, ARM Holdings, Nordic Semiconductor, NXP Semiconductors, Lancaster University, Microsoft, Python Software Foundation, element14, TechnologyUs, Samsung, ScienceScope, Barclays
类型单板微控制器
发布日期学校:2015年9月(延期)
公众:2015年10月(延期)
首次递交给教师于2016年2月[1]
系统芯片Nordic nRF51822 SoC
中央处理器16 MHz ARM Cortex-M0微控制器。
記憶體256 KB Flash,16 KB RAM。
连接接口Bluetooth LEMicroUSB,边缘连接器。
網站microbit.org

电路板大小为4cm×5cm,拥有1个ARM Cortex-M0处理器,內建加速度传感器和磁力传感器,通訊介面包括蓝牙USB,可透過網頁编程,直接把程式導入。显示屏由25个 (5*5) 紅色LED组成,可以顯示單色圖案或動畫。2个可编程按钮,可以用USB或者外部电池包来供电[2]。设备输入和输出為环孔连接器和边缘连接器。

硬件

加速度传感器三轴方向

设备大小可描述为信用卡的一半大小[3]首发的最终制造产品[4],实测为43mm×52mm,它包括有:

I/O包括环孔连接器:3个GPIO(P0、P1、P2),1个电源正极(3V),1个接地即电源负极(GND),它们接纳鳄鱼夹或4mm香蕉插头[13]边缘连接器针脚(也称为金手指)的标号,依次为micro:bit设备抽象层(DAL)指定的:P3、P0、P4-P7、P1、P8-P12、P2、P13-P16、3V(3个)、P19-P20、GND(3个),共19个可设置的GPIO(未引出内部使用的P17、P18)。其中5个可完全自由使用(P0-P2、P8、P16),6个共用于LED阵列显示屏(P3、P4、P6、P7、P9、P10),2个共用于按钮A、B(P5、P11),1个保留给无障碍接口输入(P12);可设置出1路SPI总线(P13-P15),1路I²C总线(P19-P20),1对UART串行收发;可设置出6个模拟输入(P0-P4、P10),3个触摸感应输入(P0-P2),3个PWM输出[15]

在连接了USB的情况下,KL26Z负责对这个PCB余下部份供电,将USB供给的5V±5%电压规整降至3.3V。KL26Z限定最大电流120mA,电源环孔或针脚输出可能只余下90mA。在使用电池连接器供电时,电池不为KL26Z供电,nRF51供电和电源环孔或针脚输出都来自电池。还可以谨慎的从电源环孔或针脚向micro:bit供电,从电池连接器、环孔或针脚择一供电时都不可超过3.6V极值[16]

v2

版本2(v2)在2020年10月13日发行,包括了[17]

在micro:bit v2中,可以长按3秒reset按钮来关闭主板[19][20][21]

软件

Micro Bit的软件是使用ARM Mbed开发工具建立的[22],并且采用了其编程接口DAPLink[23],设备在连接到计算机的时候,是作为一个USB大容量存储设备而出现的[14]兰卡斯特大学开发了micro:bit运行时系统(有时称为设备抽象层),提供了事件驱动编程和键-值存储机制[24],采用了Nordic半导体的nRF51 SDK[25]和S110 SoftDevice[26],以及Mbed的BLE API[27],并与蓝牙技术联盟协作开发了定制的BLE profile[28]。用户用C/C++语言编写的应用程序,可以通过Mbed在线编译器[22]、Mbed CLI[29]、GNU MCU Eclipse[30]或Keli µVISION[31]等开发工具,利用ARM编译器[32]或GNU ARM工具链[33]来进行编译,编译后的目标代码接着通过USB连接或手机app蓝牙连接而被刷写到设备中。

在micro:bit基金会网站[34]上有侧重于教育的2个官方在线代码编辑器

针对micro:bit的其他开发工具有:

  • Espruino[43],是面向网络应用开发的JavaScript解释器固件[44],解释器有运行状态持久保存和复位机制,支持内联汇编语言,由于将micro:bit的内存大量用于了蓝牙功能,不提供ES6特征和高级库函数。可以通过USB串行连接,或通过在支持了Web Bluetooth[45]的浏览器中运行Web IDE[46]对它进行交互访问,IDE也有可选的blocks编辑器。
  • Arduino nRF5[47],是针对基于Nordic半导体nRF5开发板的Arduino Core[48]
  • Node.js库:node-bbc-microbit[49],从Node.js用BLE控制micro:bit;bbc-microbit-io[50],针对micro:bit的Johnny-Five[51](JavaScript机器人IoT平台)IO插件。

除了micro:bit运行时系统所采用的Mbed OS 2[52],以及nRF51 SDK支持的CMSIS-RTOS RTX[53][54][55],可以在micro:bit上运行的嵌入式操作系统还有:ZephyrApache MynewtRIOT

针对micro:bit的其他编程语言有:uLisp[56]、Mecrisp Forth[57]Free Pascal[58]GNAT Ada[59]、TinyGo[60]Rust[61]Swift[62]等。其他交互语言有Scratch3.0[63]、Dyalog APL[64]Simulink编码器支持包[65]Node-RED模块[66]App Inventor + IoT[67]、BlockyTalkyBLE[68]等。

历史

Micro Bit被设计用来鼓励儿童活跃的投入为计算机书写软件和建造新东西,而不是成为媒体的消费者[2]。它被设计为并肩工作于其他系统,比如Raspberry Pi[69],它也建造在BBC在计算机教育中的BBC Micro这项遗产之上[70]

合作伙伴

Micro Bit的开发汇集了众多伙伴与BBC一起工作:

  • ARM控股 – 提供Mbed开发工具、固件和编译器服务[71]
  • Nordic半导体 – 为这个设备提供目标MCUBLE协议栈[2]
  • NXP半导体 – 提供接口MCU、USB控制器和传感器[2]
  • 蓝牙技术联盟 – 与兰卡斯特大学协作开发定制的Bluetooth LE profile[72]
  • 兰卡斯特大学 – 开发这个设备的运行时系统,与蓝牙技术联盟协作开发定制的Bluetooth LE profile[71]
  • 微软 – 贡献了自己在TypeScript等方面的软件专门知识。它在其TouchDevelop平台上为这个设备定制了专题项目[73],还开发了这个设备的教师训练材料[2]
  • Python软件基金会 – 将MicroPython移植到这个设备,建立本机和基于web的初学者友好的Python代码编辑器,出品大量教育资源并为教师建立有组织的开发者领导的工场[74][75]
  • Farnell element14 – 监督这个设备的制造[2]
  • Technology Will Save Us – 设计这个设备的物理外观,编写出厂演示程序[13]
  • 三星集团 – 开发Android app并帮助把设备连接到智能手机平板电脑[71]
  • ScienceScope – 开发iOS app并把这个设备发布到学校[71]
  • 巴克莱银行 – 提供产品递送和外展活动[71]
  • 惠康基金会 – 为教师和学校提供学习机会[71]
  • STEMNET – 提供STEM大使来支持学校和教师并联系第三方比如Bloodhound SSC和Cisco[76]
  • 思科系统 – 向STEMNET提供人员和资源来资助国家首展[76]
  • Creative Digital Solutions – 开发教师材料,工场和外展活动[76]
  • Code Club – 建立一系列引导9到11岁儿童的编码资源并通过志愿者递送运行编码俱乐部[76]
  • Kitronik – 为BBC micro:bit生产并分发5500份e-textile kit给英国内的D&T教师。设计硬件比如Motor Driver board来允许BBC micro:bit控制设备比如电动机伺服系统[76]
  • Tangent Design – 建立BBC micro:bit品牌标识并开发web站点[76]

BBC研究发展部建立了原型设备和软件栈[77],在最初宣布中进了展示[78],在学校中测试了这项提议,并为合作伙伴后续建设提供了参考规定[79]

Microbit教育基金会

在成功的于英国推出了micro:bit之后,BBC将BBC micro:bit的未来交付给新成立的非营利性Micro:bit教育基金会[80]。从BBC到Micro:bit教育基金会的迁移首先是将官方网站从www.microbit.co.uk转移到了microbit.org[81]

制造

Premier Farnell负责管理BBC micro:bit的制造,监督各厂商进货所有部件并在各自的加工工厂生产micro:bit[82]

各地發展

 香港

於2018年,香港教育城與資訊科技教育領袖協會(AiTLE)、香港大學專業進修學院(HKUSPACE)及 Micro:bit Alliance合辦了十七場「Micro:bit 教師工作坊」,工作坊分五種程度授課,由Micro:bit的基礎功能至進階應用技巧皆有涵蓋。部份內容被納入香港中小學的資訊科技課程[83]

参见

书籍

引用

  1. . [11 February 2016]. (原始内容存档于2019-10-18).
  2. Anthony, Sebastian. . arstechnica.uk. 7 July 2015 [8 July 2015]. (原始内容存档于2017-11-08).
  3. . [2018-03-28]. (原始内容存档于2016-05-22).
  4. Bell, Lee. . The Inquirer. 7 July 2015 [2018-03-29]. (原始内容存档于2019-12-20).
  5. Sherwin, Adam. . The Independent. 7 July 2015 [7 July 2015]. (原始内容存档于2015-08-16).
  6. Austin, Jonathan. . 7 July 2015 [2018-03-29]. (原始内容存档于2016-05-05). …we plugged them into a Nordic NRF51822 development kit, which uses the same chip as the micro:bit…
  7. (Shockwave Flash) (Television production). BBC. 事件发生在 00:39. 7 July 2015 [2018-03-29]. (原始内容存档于2020-10-23). . [2018-03-29]. 原始内容存档于2020-10-23.
  8. Franklin-Wallis, Oliver. . wired.co.uk. 7 July 2015 [8 July 2015]. (原始内容存档于2015-11-01).
  9. 串行及调试适配器 页面存档备份,存于
  10. CMSIS DAP 页面存档备份,存于.
  11. Serial Communication with a PC 页面存档备份,存于.
  12. . mbed.org. [8 July 2015]. (原始内容存档于2017-08-02). The BBC micro:bit is based on the mbed HDK. The target MCU is a Nordic nRF51822 with 16K RAM, 256K Flash. As well as the nRF51822 there's also an onboard accelerometer and magnetometer from Freescale.
  13. . BBC. [8 July 2015]. (原始内容存档于2020-12-04).
  14. Williams, Alun. . Electronics Weekly. [8 July 2015]. (原始内容存档于2015-07-14).
  15. . [2020-09-20]. (原始内容存档于2020-11-28).
  16. . [2018-04-21]. (原始内容存档于2020-12-02).
  17. . [2018-12-07]. (原始内容存档于2022-02-01).
  18. . [2022-02-22]. (原始内容存档于2022-02-22).
  19. . [2021-02-22]. (原始内容存档于2022-03-29).
  20. . [2021-02-22]. (原始内容存档于2022-02-01).
  21. . [2021-02-22]. (原始内容存档于2022-02-01).
  22. BBC micro:bit on ARM Mbed 页面存档备份,存于.
  23. DAPLink 页面存档备份,存于
  24. . [2018-03-30]. (原始内容存档于2020-09-15).
  25. nRF51 SDK 页面存档备份,存于
  26. S110 SoftDevice 页面存档备份,存于
  27. BLE API 页面存档备份,存于
  28. profile 页面存档备份,存于
  29. Mbed CLI 页面存档备份,存于
  30. GNU MCU Eclipse 页面存档备份,存于
  31. Keli µVISION 页面存档备份,存于
  32. ARM编译器 页面存档备份,存于
  33. GNU ARM工具链 页面存档备份,存于
  34. micro:bit基金会网站 页面存档备份,存于
  35. Microsoft MakeCode 页面存档备份,存于
  36. PXT 页面存档备份,存于
  37. . [2018-04-21]. (原始内容存档于2020-10-21).
  38. Williams, Alun. . ElectronicsWeekly.com. [8 July 2015]. (原始内容存档于2015-10-01).
  39. . ntoll.org. [13 November 2015]. (原始内容存档于2020-11-08).
  40. . [2018-04-21]. (原始内容存档于2020-10-21).
  41. Mu 页面存档备份,存于
  42. EduBlocks
  43. Espruino 页面存档备份,存于
  44. . [2021-02-07]. (原始内容存档于2018-10-21).
  45. Web Bluetooth 页面存档备份,存于
  46. Espruino Web IDE 页面存档备份,存于
  47. Arduino nRF5 页面存档备份,存于
  48. Core 页面存档备份,存于
  49. node-bbc-microbit 页面存档备份,存于
  50. bbc-microbit-io 页面存档备份,存于
  51. Johnny-Five 页面存档备份,存于
  52. Mbed OS 2 页面存档备份,存于
  53. CMSIS-RTOS RTX 页面存档备份,存于
    . [2018-12-04]. (原始内容存档于2018-12-05).
  54. . [2018-12-10]. (原始内容存档于2020-11-06).
  55. . [2018-04-27]. (原始内容存档于2020-11-17).
  56. . [2018-11-23]. (原始内容存档于2021-02-04).
  57. . [2018-04-22]. (原始内容存档于2020-11-30).
  58. . [2018-03-30]. (原始内容存档于2020-10-26).
  59. . [2018-11-23]. (原始内容存档于2020-11-09).
  60. . [2020-09-19]. (原始内容存档于2020-11-06).
  61. . [2018-11-24]. (原始内容存档于2020-11-08).
  62. Swift playgrounds for the micro:bit 页面存档备份,存于.
  63. . [2018-11-24]. (原始内容存档于2021-02-04).
  64. . [2018-11-24]. (原始内容存档于2020-09-18).
  65. . [2018-03-30]. (原始内容存档于2020-10-23).
  66. . [2018-11-24]. (原始内容存档于2020-09-11).
  67. . [2018-11-24]. (原始内容存档于2020-09-11).
  68. . [2018-11-24]. (原始内容存档于2020-11-27).
  69. Stuart Dredge. . The Guardian. [2018-03-30]. (原始内容存档于2020-11-08).
  70. Pritchard, Stephen. . ITPRO. 1 March 2012 [15 March 2012]. (原始内容存档于2020-10-01).
  71. Bell, Lee. . The Inquirer. [8 July 2015]. (原始内容存档于2019-12-20).
  72. . [2018-03-30]. (原始内容存档于2020-11-08).
  73. Brian, Matt. . Engadget. 7 July 2015 [8 July 2015]. (原始内容存档于2019-04-20).
  74. . Python Software Foundation News. [24 April 2016]. (原始内容存档于2018-03-30).
  75. . Python Software Foundation News. [13 November 2015]. (原始内容存档于2018-03-30).
  76. . [2018-03-30]. (原始内容存档于2017-01-29).
  77. 原型设备和软件栈 页面存档备份,存于
  78. Wakefield, Jane. . BBC News. 12 March 2015 [6 August 2015]. (原始内容存档于2020-12-02).
  79. Sparks, Michael. . BBC. 7 July 2015 [6 August 2015]. (原始内容存档于2016-03-14).
  80. . [2016年11月8日]. (原始内容存档于2016年11月8日).
  81. https://microbit.org/ 页面存档备份,存于
  82. Where to buy the BBC micro:bit and BBC micro:bit accessories 页面存档备份,存于.
  83. . [2023-08-28]. (原始内容存档于2023-08-28).

外部链接

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.