使用micro:bit在javascript中写入文本文件

时间:2017-04-17 00:00:15

标签: javascript bbc-microbit

不确定这是否可行,但我需要使用Javascript将传感器中的数据写入文本文件。然后,这些数据将显示在应用程序中,因此我需要从传感器中获取数据。

我使用BBC micro:bit作为我的微控制器,这只支持Javascript和微python,理想情况下我会使用micro python但是这还不支持BLE,我也需要这个。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:0)

这很长 - 最后有一个摘要:)

如果您使用的是MicroPython,那么您可以使用micro:bit' s 30k file system -

with open("filename.txt", "w") as file_object:
    file_object.write("[your data here]")

要管理micro:bit上的文件,您可以使用MicroFS或" ufs"简而言之。要安装:$ pip install microfs。你的四个命令是:

  1. ufs ls查看微观上的所有文件
  2. ufs rm filename.txt删除微观上的文件
  3. ufs put path/to/your/file.txt optional_target_filename.txt将文件从您的计算机复制到您的micro上
  4. ufs get filename.txt optional/path/to/target/file.txt将文件从您的微型文件复制到您的计算机上。

    有关详细信息,请键入ufs --help

  5. 注意:闪烁你微:bit会删除你的所有信息;然而,关掉它不会。此外,micro:bit的文件系统是平的,这意味着它没有目录;一切都存储在顶层。

    根据您对BLE的要求,我在该领域无法提供帮助,但我想指出radio MicroPython模块,与import radio一起使用后跟radio.on() 1}}
    (为了节省电池;还有一个radio.off()

    • 使用radio.send("[your data here]")
    • 发送数据
    • 使用radio.recieve()从消息队列的顶部接收数据。

    radio模块在​​0到100之间的通道发送无线电波,默认设置。我不确定如何改变这一点,但应该有文件在某处:)我很抱歉这不是一个很好的解决方案,但是,希望它能指出你正确的方向。

    编辑:要更改广播频道,请将radio.channel设置为所需频道(默认= 7)。它可以0-100包含,实际上是2400MHz-2500MHz。有关详细信息,请转到here

    <强>概要

    微观上的

    main.py

    import microbit
    import radio
    
    with open("datalog.txt") as logfile:
        logfile.write(microbit.temperature()) #or whatever data you had in mind
    
    radio.channel = 47 #2447MHz, feel free to use something else
    radio.send(microbit.temperature()) #or whatever
    

    app pseudocode

    radio.listenOn(2447MHz) #or whatever
    
    @event.recieveRadioMessage()
    void function(evt) {
        #tell user the data
        screen.display(evt.msg)
    }
    

答案 1 :(得分:0)

使用the blocks editor转换为Java,您可以执行以下操作:

  1. 在“块”菜单中,选择底部的高级块
  2. 滚动到底部,然后单击添加程序包
  3. 在搜索框中输入file
  4. 这会找到一个名为files beta的软件包,选择它

您现在有了相关的块,可将数据写入微比特。 如上所述,您将需要microfs实用程序使用usb电缆从微比特中检索数据。警告请勿在未获取脚本将被擦除的数据的情况下将脚本(复制/下载.hex文件)刷新到您的微型位