如视频无法正常播放,可点击这里前往B站观看
小夜灯系统测试程序:(无法复制本站示例程序代码?请点击这里获得解决方法。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
/* * TC-Light-Test * 太极创客-环保小夜灯-测试程序 * by 太极创客 (2017-11-25) * www.taichi-maker.com * * 此示例程序为配合太极创客制作的 * 零基础入门学用ARDUINO教程-智能应用篇使用 * * 基本功能介绍: * 用户根据太极创客录制的环保小夜灯视频演示后可将此示例程序 * 上传至控制小夜灯的Arduino开发板从而确认电路搭建是否成功。 * * 基本电路连接说明: * 共阴极RGB-LED引脚R 连接 Arduino控制器引脚6 * 共阴极RGB-LED引脚G 连接 Arduino控制器引脚5 * 共阴极RGB-LED引脚B 连接 Arduino控制器引脚3 * 红外人体感应模块信号输出引脚 连接 Arduino控制器引脚8 * 光敏电阻分压电路信号输出引脚 连接 Arduino控制器引脚A0 * * 如需获取太极创客-环保小夜灯的具体电路连接以及视频教程 * 请参见太极创客网站: * http://www.taichi-maker.com/homepage/arduino-tutorial-index/intelligent-index/ * */ #define rLedPin 6 //RGB-LED引脚R #define gLedPin 5 //RGB-LED引脚G #define bLedPin 3 //RGB-LED引脚B #define irSensorPin 8 //红外人体感应模块信号输出 #define lightSensorPin A0 //光敏电阻分压电路信号输出 int ledR = 0; //R Led 亮度 int ledG = 0; //G Led 亮度 int ledB = 0; //B Led 亮度 bool irReading; //红外人体感应模块输出 int lightReading; //光敏电阻分压电路信号输出 int ledColorIndex; void setup() { //设置引脚为相应工作模式 pinMode(rLedPin, OUTPUT); //pinMode(6, OUTPUT); pinMode(gLedPin, OUTPUT); pinMode(bLedPin, OUTPUT); pinMode(irSensorPin, INPUT); Serial.begin(9600); Serial.println("Taichi-Maker Night-Light Test Sketch."); } void loop() { lightReading = analogRead(lightSensorPin); //测试光敏电阻 delay(500); irReading = digitalRead(irSensorPin); //测试红外人体感应传感器 delay(500); rgbLedTest(); //测试LED Serial.println("=====Sensor Test Report====="); Serial.print("lightReading = "); Serial.println(lightReading); Serial.print("irReading = "); Serial.println(irReading); Serial.println("============================"); } void rgbLedTest(){ //led测试程序 ledColorIndex++; switch (ledColorIndex) { case 1: //点亮红色LED redTest(); break; case 2: //熄灭LED blackTest(); break; case 3: //点亮绿色LED greenTest(); break; case 4: //熄灭LED blackTest(); break; case 5: //点亮绿色LED greenTest(); break; case 6: //熄灭LED blackTest(); break; case 7: //点亮蓝色LED blueTest(); break; case 8: //熄灭LED blackTest(); break; case 9: //点亮蓝色LED blueTest(); break; case 10: //熄灭LED blackTest(); break; case 11: //点亮蓝色LED blueTest(); break; case 12: //熄灭LED blackTest(); break; } if (ledColorIndex == 12) ledColorIndex = 0; //led测试循环 } void redTest(){ //测试红色LED digitalWrite(rLedPin, HIGH); digitalWrite(gLedPin, LOW); digitalWrite(bLedPin, LOW); } void greenTest(){ //测试绿色LED digitalWrite(rLedPin, LOW); digitalWrite(gLedPin, HIGH); digitalWrite(bLedPin, LOW); } void blueTest(){ //测试蓝色LED digitalWrite(rLedPin, LOW); digitalWrite(gLedPin, LOW); digitalWrite(bLedPin, HIGH); } void blackTest(){ //LED熄灭 digitalWrite(rLedPin, LOW); digitalWrite(gLedPin, LOW); digitalWrite(bLedPin, LOW); } |