串行监视器不显示安装程序或主控制器中的代码 - 波特率9600

Serial Monitor Not Displaying Code From Setup or Main - Baud 9600

本文关键字:控制器 代码 9600 波特率 监视器 显示 程序 安装      更新时间:2023-10-16

在setup()中,我有Serial.begin(9600),但是每当我让串行监视器打印任何内容时,都不会显示任何文本。我尝试移动 print() 函数的位置(包括直接在 Serial.begin() 下),但没有任何效果。

#include <Stepper.h>
#include "CommandTest.h"
#include "BlueSide.h"
#include "RedSide.h"
#include "GreenSide.h"
#include "YellowSide.h"
#include "OrangeSide.h"
#include "WhiteSide.h"
void setup(){
  Serial.begin(9600);
  delay(1);
  Serial.print("test"); //not displaying even this
  char temp[] = "wwwwwwwww";
  WhiteSide::setValue(temp);
  strcpy(temp, "rrrrrrrrr");
  RedSide::setValue(temp);
  strcpy(temp, "bbbbbbbbb");
  BlueSide::setValue(temp);
  strcpy(temp, "ooooooooo");
  OrangeSide::setValue(temp);
  strcpy(temp, "ggggggggg");
  GreenSide::setValue(temp);
  strcpy(temp, "yyyyyyyyy");
  YellowSide::setValue(temp);
  delay(1000);
}
void printCube(){
  Serial.println(WhiteSide::getArray());
  Serial.println(RedSide::getArray());
  Serial.println(BlueSide::getArray());
  Serial.println(OrangeSide::getArray());
  Serial.println(GreenSide::getArray());
  Serial.println(YellowSide::getArray());
}
int main(){
  CommandTest command;
  Serial.print("start");//not displaying this
  command.f();
  printCube();//and it's not printing these arrays
  delay(1000);
  command.fp();
  printCube();
  delay(1000);
  command.r();
  printCube();
  delay(1000);
  command.rp();
  printCube();
  delay(1000);
  command.l();
  printCube();
  delay(1000);
  command.lp();
  printCube();
  delay(1000);
  return 0;
}

在Arduino草图中,您不需要编写main函数。唯一需要的功能是 setuploop .

正在使用您本地声明的main,而不是 Arduino 核心提供的(这是允许的,因为 arduino main来自库,因此您的main取代了它)。因此,永远不会调用setup

int main()重命名为 void loop(),并从末尾删除return 0;

这似乎很明显,但是您是否考虑过将setup()函数添加到main中? 如果不实际启用串行模块,您不太可能看到任何内容。 自从我使用Arduino以来已经有一段时间了,但是据我回忆,设置串行输出相当简单。

您可能还需要检查接线是否正确。 在这种情况下,示波器将工作得很好,但是简单的回顾也可能就足够了。