Arduino开发串口控制ESP8266 RGB LED

  1. 根据板卡原理RGB三色LED对应引脚:

int LEDR=12、int LEDG=14、int LEDB=13;

  1. 设置串口波特率为115200

Serial.begin(115200);

  1. 源代码如下所示:

/*

名称:串口控制RGB亮灭实验

功能:通过串口输入R、G、B三个字母来点亮对应的LED灯,关闭其他另外两个LED灯。

板卡:LYU-IOT-ESP12F

作者:gflytu@163.com

时间:2023.1.18

*/

int inByte = 0; // incoming serial byte

int LEDR=12;

int LEDG=14;

int LEDB=13;

void setup() {

// start serial port at 9600 bps:

Serial.begin(115200);

while (!Serial) {

; // wait for serial port to connect. Needed for native USB port only

}

pinMode(LEDG, OUTPUT);

pinMode(LEDR, OUTPUT);

pinMode(LEDB, OUTPUT);

pinMode(2, OUTPUT); // digital sensor is on digital pin 2

establishContact(); // send a byte to establish contact until receiver responds

}

void loop() {

digitalWrite(LED_BUILTIN, LOW);

// if we get a valid byte, read analog ins:

if (Serial.available() > 0) {

// get incoming byte:

inByte = Serial.read();

if(inByte=='G')

{

Serial.print("\r\n点亮绿灯\r\n");

digitalWrite(LEDG,HIGH);

digitalWrite(LEDR,LOW);

digitalWrite(LEDB,LOW);delay(10);

}

if(inByte=='R')

{

Serial.print("\r\n点亮红灯\r\n");

digitalWrite(LEDG,LOW);

digitalWrite(LEDR,HIGH);

digitalWrite(LEDB,LOW);delay(10);

}

if(inByte=='B')

{

Serial.print("\r\n点亮蓝灯\r\n");

digitalWrite(LEDG,LOW);

digitalWrite(LEDR,LOW);

digitalWrite(LEDB,HIGH);delay(10);

}

}

}

void establishContact() {

while (Serial.available() <= 0) {

Serial.print("welcome to Arduino\r\n");

delay(300);

}

}

  1. 操作过程串口输出下图所示:

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值