0°

(十)arduino入门:串行监视器

一、本节介绍

在本实验中,您将学习如何通过计算机和串行监视器打开或关闭LED。串行监视器用于Uno板和计算机或其他设备之间的通信。它是Arduino环境中的内置软件,您可以点击右上角的按钮打开它。您可以通过Uno板上的串行端口发送和接收数据,并通过键盘输入控制电路板。

在本实验中,由于我们使用彩色LED作为负载,您可以在IDE中的串行监视器上输入红色,绿色和蓝色之间的颜色。Arduino Uno板上的相应LED将亮起。

二、材料准备

  • 1 * Arduino Uno板
  • 1 *面包板
  • 3 * LED
  • 3 *电阻(220Ω)
  • 若干杜邦线
  • 1 * USB数据线

三、原理讲解

在这里,串行监视器作为您的计算机和Arduinp Uno板之间的通信的传输站。首先,计算机将数据传输到串行监视器,然后数据由Arduino Uno板读取。最后,Uno将执行相关操作。

四、实验步骤

步骤1:建立电路

image https://bbs.qutaojiao.com/assets/images/1-lVxm6oQx6Vg7bVrn.png

原理图

image https://bbs.qutaojiao.com/assets/images/1-85kZ0vwAagUesCLR.png

步骤2:编写程序

步骤3:编译代码

步骤4:将程序上传到Arduinor Uno板

现在,点击IDE右上角的串行监视器按钮。然后将弹出Serial Monitor窗口,如下所示。

image https://bbs.qutaojiao.com/assets/images/1-FS6MXF7sWDY5PY23.jpeg

使用此窗口,您不仅可以将数据从计算机发送到Arduino Uno板,还可以从板上接收数据并将其显示在屏幕上。当您打开窗口时,将显示“请输入任何颜色的LED: ”。您可以在此处输入颜色。如果输入红色,绿色或蓝色,请单击发送,然后面板上的相应LED将亮起。但是,如果您输入这三种以外的任何颜色,则不会显示LED。

例如,如果输入红色,您将看到红色的LED亮起。

image https://bbs.qutaojiao.com/assets/images/1-XQ5SlUNqXN4GEVGF.jpeg

本节代码:

/****************************/
//串行监视器
//打开串行监视器,如果输入红色,您将看到红色的LED亮起
//2017.10.17
/****************************/
const int greenPin = 2; //绿色的引脚连接到引脚2
const int yellowPin = 3; ///黄色引脚连接到引脚3
const int redPin = 4; ///红色引脚连接到引脚4
String comdata = "";
int lastLength = 0;
void setup()
{
  pinMode(greenPin, OUTPUT); //将yellowPin初始化为输出
  pinMode(yellowPin, OUTPUT); //初始化redPin作为输出
  pinMode(redPin, OUTPUT); //启动9600bps的串行端口:
  Serial.begin(9600); // start serial port at 9600 bps:
  Serial.print("Please input any color of LED:"); //串行监视器上的打印消息
}
void loop()
{
  //从串行监视器读取字符串
  if (Serial.available() > 0) ///如果我们得到一个有效的字节,请阅读模拟输入
  {
    comdata = "";
    while (Serial.available() > 0)
    {
      comdata += char(Serial.read());
      delay(2);
    }
    Serial.println(comdata);
  }
  if (comdata == "red")
  {
    digitalWrite(redPin, HIGH);//将红色的
    digitalWrite(greenPin, LOW);//转动绿色
    digitalWrite(yellowPin, LOW);//转动黄色LED 熄灭
  }
  else if (comdata == "yellow")
  {
    digitalWrite(redPin, LOW);//转动红色
    digitalWrite(greenPin, LOW);//转动绿色LED关
    digitalWrite(yellowPin, HIGH);//打开黄色带领
  }
  else if (comdata == "green")
  {
    digitalWrite(redPin, LOW);//开启红色LED灭
    digitalWrite(greenPin, HIGH);//开启红色LED灭
    digitalWrite(yellowPin, LOW);//开启红色LED灭
  }
  else
  {
    digitalWrite(redPin, LOW);//开启红色LED灭
    digitalWrite(greenPin, LOW);//转动绿色
    digitalWrite(yellowPin, LOW);//转动绿色
  }
}

 

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论