利用光敏电阻,通过模拟输入采集环境光强来控制LED灯亮度,做一个无需人为干预的自动控制装置。当光敏电阻被遮挡,LED灯变亮;无遮挡时,LED灯亮度变暗。在此基础上,增加LCD1602显示光敏电阻的数值,并通过串口监视器将光敏电阻值输出的程序
时间: 2023-11-20 17:05:55 浏览: 239
基于是STM32单通道采集光敏电阻的值,然后通过OLED屏幕显示.基于杨涛一号开发板.zip
5星 · 资源好评率100%
以下是你所需要的Arduino代码:
```
// 引入LCD1602库
#include <LiquidCrystal.h>
// 初始化LCD1602液晶显示屏
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// 初始化光敏电阻模拟输入引脚
int ldrPin = A0;
// 初始化LED灯数字输出引脚
int ledPin = 9;
void setup() {
// 设置LED灯数字输出引脚为输出模式
pinMode(ledPin, OUTPUT);
// 初始化串口通信
Serial.begin(9600);
// 初始化LCD1602液晶显示屏
lcd.begin(16, 2);
// 显示欢迎信息
lcd.print("Hello World!");
}
void loop() {
// 读取光敏电阻数值
int ldrValue = analogRead(ldrPin);
// 将光敏电阻数值输出到串口监视器
Serial.print("LDR Value: ");
Serial.println(ldrValue);
// 显示光敏电阻数值到LCD1602液晶显示屏
lcd.setCursor(0, 1);
lcd.print("LDR Value: ");
lcd.print(ldrValue);
// 根据光敏电阻数值控制LED灯亮度
int ledValue = map(ldrValue, 0, 1023, 0, 255);
analogWrite(ledPin, ledValue);
// 等待500毫秒
delay(500);
}
```
将上述代码上传到Arduino UNO控制板中,然后接上光敏电阻模块、LED灯模块和LCD1602液晶显示屏即可。
阅读全文