如果声称罗伯塔语言编程一个Calliope迷你?

时间:2017-06-07 08:15:45

标签: calliope roberta

我正在尝试使用其中一个提供的编辑器Roberta(图形界面https://calliope.cc/)对新发布的Calliope迷你计算机平台(https://lab.open-roberta.org/)进行编程。

检查是否按下某个键并输出hello world消息的简单程序无法正常运行。同时,消息的直接输出起作用,输出和if语句使用"始终为真"条件(1 == 1)。

其他编辑器(例如https://miniedit.calliope.cc/)可以毫无问题地处理键输入,因此我可以排除任何硬件问题。

对我来说,似乎Roberta包含与if语句相关的密钥处理中的错误。

有没有人观察过类似的行为?

到目前为止,Roberta似乎还没有用户论坛。

附加截图和代码。 谢谢你的任何提示!

#define _GNU_SOURCE

#include "MicroBit.h" 
#include <array>
#include <stdlib.h>
MicroBit uBit;


int initTime = uBit.systemTime(); 


int main() 
{
    uBit.init();

    if ( uBit.buttonA.isPressed() ) {
        uBit.display.scroll(ManagedString("Hallo"));
    }
    release_fiber();
} 

Sample code in graphical IDE

1 个答案:

答案 0 :(得分:3)

您应该将代码置于无限循环中:

int main() 
{
    uBit.init();

    while ( true ) {
        if ( uBit.buttonA.isPressed() ) {
            uBit.display.scroll(ManagedString("Hallo"));
        }
        uBit.sleep(1);
    }
    release_fiber();
}