巧用Arduino:光敏电阻与按钮双控流水灯实现方案
要实现Arduino光敏电阻控制流水灯并可用按钮控制,首先需要连接光敏电阻和按钮到Arduino板上。以下是一个示例代码: ```cpp // 定义引脚 const int photoResistorPin = A0; // 光敏电阻连接到模拟输入引脚A0 const int buttonPin = 2; // 按钮连接到数字输入引脚2 const int ledPin1 = 3; // LED连接到数字输出引脚3 const int ledPin2 = 4; // LED连接到数字输出引脚4 const int ledPin3 = 5; // LED连接到数字输出引脚5 void setup() { pinMode(photoResistorPin, INPUT); // 设置光敏电阻引脚为输入模式 pinMode(buttonPin, INPUT_PULLUP); // 设置按钮引脚为输入模式,启用内部上拉电阻 pinMode(ledPin1, OUTPUT); // 设置LED引脚为输出模式 pinMode(ledPin2, OUTPUT); // 设置LED引脚为输出模式 pinMode(ledPin3, OUTPUT); // 设置LED引脚为输出模式 } void loop() { int photoResistorValue = analogRead(photoResistorPin); // 读取光敏电阻的值 int buttonState = digitalRead(buttonPin); // 读取按钮的状态 if (buttonState == LOW) { // 如果按钮被按下 for (int i = 3; i <= 5; i++) { digitalWrite(i, HIGH); // 打开LED delay(100); // 延时100毫秒 digitalWrite(i, LOW); // 关闭LED delay(100); // 延时100毫秒 } } else if (photoResistorValue > 500) { // 如果光敏电阻的值大于500 digitalWrite(ledPin1, HIGH); // 打开第一个LED digitalWrite(ledPin2, LOW); // 关闭第二个LED digitalWrite(ledPin3, LOW); // 关闭第三个LED } else { // 如果光敏电阻的值小于或等于500 digitalWrite(ledPin1, LOW); // 关闭第一个LED digitalWrite(ledPin2, HIGH); // 打开第二个LED digitalWrite(ledPin3, LOW); // 关闭第三个LED } } ``` 这个代码实现了当按钮被按下时,三个LED依次闪烁;当光敏电阻检测到光线强度较高时,第一个LED亮起,其他两个熄灭;当光线强度较低时,第二个LED亮起,其他两个熄灭。 ######[AI写代码神器 | 629点数解答 | 2024-06-20 18:37:27]
- Java JFrame 实现多界面跳转:含登录、注册及个人信息管理功能(讯飞星火 | 503点数解答 | 2024-06-06 23:49:29)408
- 超详细!用复杂 HTML 代码打造功能丰富网站,含特色搜索与展示(字节豆包 | 572点数解答 | 2024-11-17 07:58:26)273
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)371
- jQuery 实现动态操作 DOM:打造可增删任务的待办事项列表应用(百度文心 | 1015点数解答 | 2024-10-26 23:41:22)447
- jQuery 打造实用待办事项列表:输入添加、点击删除一步到位!(阿里通义 | 1139点数解答 | 2024-10-29 08:44:48)362
- jQuery 实现动态操作 DOM:打造带添加与删除功能的待办事项列表应用(阿里通义 | 687点数解答 | 2024-10-29 09:25:06)376
- jQuery 实战:打造可添加与删除任务的待办事项列表应用(字节豆包 | 499点数解答 | 2024-10-29 20:40:48)287
- 工程师必备:十大APP性能优化方案大揭秘(百度文心 | 300点数解答 | 2023-11-09 18:31:04)349
- 含不规则缺陷原材料的最优切割方案建模与损失率、利用率计算(DeepSeek | 2367点数解答 | 2025-05-10 23:47:30)278
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)342
- 用Arduino实现光敏电阻控制<500亮、按钮开启的流水灯,附硬件连接与代码示例 ( | 987点数解答 | 2024-06-20 20:05:00)195
- Arduino UNO+0.96寸OLED屏+摇杆模块:超详细贪吃蛇小游戏代码、注解与连线图(字节豆包 | 1745点数解答 | 2025-07-06 15:59:00)131