菜鸡的学习记录
实验目的:
通过本次实验掌握以下知识:
- 串口通信波特率设置。
- 设计串口通信协议。
- 串口读取字符。
- 串口读取整数值。
- PWM输出
初步掌握和理解以下协议和软件的使用
- MQTT协议
- NodeRED软件
- App Inventor软件
实验要求:
- 编写可以通过接收串口数据,控制led三色灯的颜色的arduino程序。
- 使用NodeRED软件,现实控制led三色灯的颜色。
- 使用App Inventor软件,制作手机APP软件,实现控制led三色灯的颜色。
实验内容:
①Arduino程序控制led三色灯的颜色
#define R_pin 9
#define B_pin 10
#define G_pin 11
int R = 0;
int G = 0;
int B = 0;
void LED_W() {
analogWrite(R_pin, R);
analogWrite(G_pin, G);
analogWrite(B_pin, B);
}
void setup() {
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
char ch = Serial.read();
if (ch == 'R') {
R = Serial.parseInt();
Serial.print("R=");
Serial.println(R);
LED_W();
}
if (ch == 'G') {
G = Serial.parseInt();
Serial.print("G=");
Serial.println(G);
LED_W();
}
if (ch == 'B') {
B = Serial.parseInt();
Serial.print("B=");
Serial.println(B);
LED_W();
}
if (ch == 'F') {
analogWrite(R_pin, 0);
analogWrite(G_pin, 0);
analogWrite(B_pin, 0);
}
if (ch == 'N') {
LED_W();
}
}
}
打开串口监视器(例如依次输入R100 G100 B100 F N,观察颜色的变化)
②使用NodeRED软件,现实控制led三色灯的颜色
浏览器输入127.0.0.1:1880打开Node-RED(打开前需运行脚本文件)
mmqt in节点的设置
浏览器输入http://127.0.0.1:1880/ui打开Node-RED Dashboard便可对led三色灯进行控制
③使用App Inventor软件实现控制led三色灯的颜色。
组件设计:
逻辑设计:
注:主题需与node-RED中的一致
然后打包apk,用安卓手机扫码下载便可手机端远程控制led三色灯