0

一部のデータロギングにArduinoUnoを使用しています。それを監視し、シリアルコマンドラインからのコマンドでログを開始したいと思います。しかし、ロガーを停止せずにシリアルモニターを閉じることもできるようにしたいと思います。

1をシリアルに書き込むと、「sta」がsta2 = 1につながる入力に設定されると予想しました。これは、モニターを閉じているときにハイのままであるはずですが、そうではないようです。

コード

void loop() {
    if (Serial.available()){
        ser = Serial.read();
        switch (ser){
            case '0':
                sta = 0;
                sencortjek = 1;
                Serial.println("logger stopped");
                break;
            case '1':
                sta = 1;
                Serial.println("logger started");
                if (sta == 1){
                    sta2 = 1;
                }
                break;
        }
    }
    if (sta2 == 1)
    {
        prog();
    }
}

ロギングが行われるたびに、ボード上のLEDが点滅します。モニターを閉じると止まります。

4

1 に答える 1

0

シリアルポートが使用されているため、arduino で点滅している LED は rx/tx です。シリアルモニターを起動すると、arduino が再起動します。データストリームを読み取るシリアルポートに何もない場合 (モニターが閉じている場合) は、とにかく何も記録していません。

于 2013-01-22T16:18:09.013 に答える