串行监视器无输出

时间:2018-08-01 20:34:26

标签: arduino

我正在尝试将传感器值转换为二进制,以存储在一个小的char数组(tbuf)中,并将这些小的数组连接成一个更大的数组。最终,我想通过pbuf通过串行发送充满7个10位值的大数组(Serial.write())。这是我到目前为止尝试过的代码:

void setup() {
  Serial.begin(115200);
}

void loop() {
  if (Serial.available() > 0) {
      int s = 251;
      char pbuf[78];
      char tbuf[11];
      itoa(s, tbuf, 2);
      strcat(pbuf, tbuf);
      Serial.println(pbuf);
  }
  Serial.end();
}

它不会将永久缓冲区(pbuf)或任何东西输出到串行监视器。我对串行监视器的输出是什么。

对于如何从类似于此代码的输出中获得任何建议,我将不胜感激。

1 个答案:

答案 0 :(得分:-2)

请勿在函数Serial.end()中使用loop()。您的代码一次运行Serial.begin(),如果您的序列号不可用,则您仅调用Serial.end()
也许您可以尝试这种方法:

int varA =0;

void setup() {
  Serial.begin(115200);
}

void loop() {
  if (Serial.available() > 0) {
    varA = Serial.parseInt(); //or   Serial.parseFloat();
    Serial.println(varA);
  }
}