ESP8266 Blinker RGB三色灯控制

这篇博客介绍了如何使用ESP8266和Blinker库来通过滑动条控件远程控制RGB三色灯的颜色。内容涵盖了配网方法,无论是通过手机APP还是直接在代码中配置,并提供了简单的三色灯控制代码示例。
摘要由CSDN通过智能技术生成

本程序通过Blinker滑动条控件控制RGB三色灯颜色,配网还是参考前面的,可手机或者app配网,也可以自己写到代码里

会三色控制了,冷暖白双色就类似了,取两个变量就可以了。

 

简单粗暴,代码如下:

/*
*Blinker控制RGB三色灯程序
*小功率三色灯珠共阴极接GND, 阳极极经限流电阻接IO口;IO口状态为高时,灯亮。
*根据LED共阴共阳,自己调整程序。
*大功率LED可以根据功率选择相应的放大器,如MOS管
*硬件ESP8266
*/

#define BLINKER_WIFI     
#define BLINKER_ESP_SMARTCONFIG //定义EspTouch/SmartConfig模式进行配网,也可以微信扫码配网

#include <Blinker.h>

//重定义引脚
#define PIN_RLED 5   
#define PIN_GLED 4
#define PIN_BLED 0

char auth[] = "APP密钥";        //设备密钥
//代码配网用这段
//char ssid[] = "WIFI SSID";        //自己wifi名称
//char pswd[] = "WIFI PSWD";        //自己wifi密码

// 新建组件对象
BlinkerSlider SliderR("Rval"); //红灯亮度滑条
BlinkerSlider SliderG("Gval"); //绿灯亮度滑条
BlinkerSlider SliderB("Bval"); //蓝灯亮度滑条


//红色输出
void sliderR_callback(int32_t value)    //滑条回调函数,滑条值范围0~1023,在APP中范围设为0~
要使用Blinker控制马达,你需要连接一个电机驱动模块到ESP8266上。一般来说,电机驱动模块具有两个输入端口,一个用于控制电机的转速,一个用于指示电机的旋转方向。 以下是一个简单的示例代码,演示了如何使用Blinker控制电机的转速和方向: ```c++ #include <Blinker.h> #define MOTOR_SPEED_PIN D1 // define the pin for motor speed control #define MOTOR_DIR_PIN D2 // define the pin for motor direction control BlinkerButton Power("power"); // define the blinker button void setup() { pinMode(MOTOR_SPEED_PIN, OUTPUT); pinMode(MOTOR_DIR_PIN, OUTPUT); Power.attach(powerDetect); // attach the powerDetect function to the button Blinker.begin("your_blinker_id", "your_blinker_key", "your_device_name"); } void loop() { Blinker.run(); } void powerDetect(const String & state) { if(state == BLINKER_CMD_ON) { digitalWrite(MOTOR_DIR_PIN, HIGH); analogWrite(MOTOR_SPEED_PIN, 255); // set the motor speed to maximum } else if(state == BLINKER_CMD_OFF) { digitalWrite(MOTOR_DIR_PIN, LOW); analogWrite(MOTOR_SPEED_PIN, 0); // turn off the motor } } ``` 在这个例子中,我们通过将电机的速度控制信号连接到ESP8266的D1引脚上,将电机的方向控制信号连接到D2引脚上。然后,我们将Blinker按钮“power”附加到名为“powerDetect”的函数上,该函数将根据按钮的开/关状态控制电机的旋转方向和速度。 当用户在Blinker应用程序中按下“power”按钮时,ESP8266会将电机的方向引脚设置为高电平,将速度引脚设置为255(最大值),从而使电机以最大速度旋转。当按钮被释放时,ESP8266会将电机方向引脚设置为低电平,将速度引脚设置为0,从而停止电机的旋转。 请注意,这只是一个演示如何使用Blinker控制电机的示例。实际上,您需要根据电机驱动模块的规格书来确定正确的引脚连接和电路设计。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值