将python闪存到bbc micro:bit的模块和实用程序。

uflash的Python项目详细描述


uFlash

此模块仅适用于Python2.7或3.3+。

使用python脚本和 micropython运行时。您将此实用程序的名称发音为"micro flash"。;(-)

它提供三项服务:

  1. 一个函数库,以编程方式创建一个十六进制文件并将其闪存到bbc micro:bit上。
  2. 一个名为uflash的命令行实用程序,将python脚本闪存到bbc micro:bit上。
  3. 一个名为 py2hex 的命令行实用程序,用于从python脚本创建hex文件并将它们保存在本地文件系统中

实现了几个基本操作:

  • 将python编码为十六进制格式。
  • 将生成的十六进制化python嵌入micropython运行时十六进制。
  • 从micropython十六进制文件中提取编码的python脚本。
  • 发现连接的micro:bit。
  • 将生成的十六进制复制到micro:bit上,从而使设备闪烁。
  • 指定嵌入python代码的micropython运行时十六进制。

安装

要安装,只需键入:

$ pip install uflash

…软件包将从pypi下载。如果您希望升级到 最新版本,请使用以下命令:

$ pip install --no-cache --upgrade uflash

注意: 您必须使用USB 数据电缆将micro:bit连接到 计算机(有些电缆仅提供电源)。如果插上电源,你的状态会很好 在中,micro:bit在文件系统上显示为USB存储设备。

Linux用户:要使uflash工作,必须确保micro:bit作为 USB存储设备。通常这是自动完成的。如果不是你可能 已将自动装载配置为关闭。如果是这样,我们假设你 具备自己安装设备或安装 如果缺少必需的内核模块。流行Linux的默认安装 发行版"应该可以正常工作"(TM)提供了默认安装。

命令用法

uFlash

要阅读帮助,只需键入:

$ uflash --help

或:

$ uflash -h

要查找版本信息,请键入:

$ uflash --version

如果您自己键入命令,则uflash将尝试查找连接的 bbc micro:bit and flash未经修改的micropython默认版本 运行时间:

$ uflash
Flashing Python to: /media/ntoll/MICROBIT/micropython.hex

使用嵌入的指定脚本刷新micropython运行时的版本 在它里面(这样当bbc的micro:bit启动时脚本运行)然后通过 中python脚本的路径作为命令的第一个参数:

$ uflash my_script.py
Flashing my_script.py to: /media/ntoll/MICROBIT/micropython.hex

您可以让uflash监视脚本的更改。它将闪烁 每次保存时自动进行:

$ uflash -w my_script.py

或:

$ uflash --watch my_script.py

此时,uflash将尝试自动检测到设备的路径。 但是,如果您插入了多个设备和/或知道路径 bbc micro:bit的文件系统已经存在,您可以将其指定为 命令的第二个参数:

$ pip install uflash
0

您甚至可以同时闪存多个设备:

$ pip install uflash
1

要从十六进制文件中提取python脚本,请使用"-e"标志,如下所示:

$ pip install uflash
2

这将把从"something.hex"恢复的python脚本保存到文件中 "myscript.py"。如果不提供目标,则恢复的脚本将发送到 StdU.

如果你正在开发micropython并且有一个自定义的运行时hex文件,你可以 在中指定uflash使用它而不是micropython的内置版本 以下方式:

$ pip install uflash
3

或:

$ pip install uflash
4

py2hex

在与input.py文件相同的目录中创建output.hex文件:

$ pip install uflash
5

py2hex包含与uflash相同的-r/–runtime和-m/–minify选项 并添加了一个附加选项-o/–outdir:

要在其他目录中创建输出.hex文件:

$ pip install uflash
6

或:

$ pip install uflash
7

Py2Hex可以处理多个输入文件:

$ pip install uflash
8

或:

$ pip install uflash
9

开发

源代码托管在github中。请随意叉出存储库。 假设您安装了git,那么可以从canonical 具有以下命令的存储库:

$ pip install --no-cache --upgrade uflash
0

通过创建 一个虚拟的和正在运行的:

$ pip install --no-cache --upgrade uflash
1

要在本地将模块的开发版本安装到virtualenv中, 运行以下命令:

$ pip install --no-cache --upgrade uflash
2

有一个makefile可以帮助处理大多数与 随着发展。输入make将列出以下选项:

$ pip install --no-cache --upgrade uflash
3

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java希望直接扫描要上传到网页的文档   java JavaFX使对象可见,但不使用(忽略)点击   java LibGdx奇怪的纹理行为   java JavaFx ComboBox在第一次单击时未获得正确的值   api WebDav服务器库最好使用Java   java在Android中维护应用程序状态   java保存在Android中拖放RecyclerView后所做的更改我已经阅读了所有内容   无法读取项目中所需库tomcatembedwebsocket的java存档,或者该存档不是有效的ZIP文件   c#类在系统中有哪些关联?如何在UML中最好地表示它们?   java如何使用bazaar访问两台计算机上的同一文件夹   Java易失性与缓存一致性   java如何解决http11。校长:例外?   java liferaymavenplugin从maven Liferay 6.2.5(6.2 ga6)部署war   安卓的jar for java在哪里。木卫一。文件   java邻接矩阵中BFS的顺序是什么?   虚拟机如何从java启动linux虚拟机?   向DefaultListModel添加元素时java JList未更新   java JMSListener批注无法与REST服务一起使用   java DirectoryStream返回路径的顺序是什么?文件名,上次修改,文件大小?   java DropWizard Hibernate doc想说什么?