Qt RGB三色灯上位机

今天突发奇想做一个Qt RGB三色灯上位机,刚好手上有一个RGB三色灯和arduion开发板。

我是想实现一个颜色选择器界面然后鼠标点击颜色区域就可以发出rgb的值,然后把这个值通过串口线发送给arduion,arduion再解析出数据发送给RGB三色灯。

实现界面如下:

电路如下:

arduion程序如下:

c 复制代码
/*运行环境:Arduino 1.8.19*/

#define GREEN 9
#define BLUE 10
#define RED 11
#define delayTime 100
int redValue;
int greenValue;
int blueValue;

void setup(){
  Serial.begin(9600);
  pinMode(RED, OUTPUT);
  pinMode(GREEN, OUTPUT);
  pinMode(BLUE, OUTPUT);
  digitalWrite(RED, HIGH);
  digitalWrite(GREEN, LOW);
  digitalWrite(BLUE, LOW);
}

void loop(){   
  if(Serial.available() >= 9) {
    char buffer[10];
    Serial.readBytes(buffer, 9);

    redValue = (buffer[0] - '0') * 100 + (buffer[1] - '0') * 10 + (buffer[2] - '0');
    greenValue = (buffer[3] - '0') * 100 + (buffer[4] - '0') * 10 + (buffer[5] - '0');
    blueValue = (buffer[6] - '0') * 100 + (buffer[7] - '0') * 10 + (buffer[8] - '0');

    analogWrite(RED, redValue);
    analogWrite(GREEN, greenValue);
    analogWrite(BLUE, blueValue);
  }
}

这样通过上位机就可以随意控制灯的颜色了,可以买个灯罩,再画一个PCB加充电电源或者电池,一个自己控制色彩的床头灯就完成了。

相关推荐
用户805533698037 小时前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner7 小时前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz5 天前
QML Hello World 入门示例
qt
xcyxiner8 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner9 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner9 天前
DicomViewer (添加模型类)3
qt
xcyxiner10 天前
DicomViewer (目录调整) 2
qt
xcyxiner10 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR00612 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术12 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript