O sensor de luz do Arduino controla o brilho da luz do LED
Objetivo 1:
Através do sensor fotossensível, o brilho do LED pode ser ajustado automaticamente de acordo com o brilho do ambiente.Se o brilho do ambiente for baixo, a luz do LED será mais brilhante.
Sensor fotossensível:
O sensor fotossensível tem quatro portas:
AO: saída de sinal analógico
DO: saída de sinal de comutação TTL (nível baixo de saída DO quando o brilho é maior que o valor definido, caso contrário, saída de nível alto)
Esquema de fiação:
- Porta DO não conectada aqui -
Código relevante:
int value; //存储通过光敏传感器后电灯亮度值
void setup(){
Serial.begin(9600);
pinMode(4,OUTPUT); //4脚为输出脚
}
void loop(){
value=analogRead(A0)/4;
analogWrite(4,value);
}
Efeito de imagem:
Objetivo dois:
Use o monitor serial para controlar o modo de luz LED:
- A. Modo de luz noturna (baixo brilho da luz LED)
- B. Modo de leitura (luz LED com alto brilho)
- C. Modo adaptativo (iluminação do brilho da luz LED adaptável)
Código:
int mode; //定义模式(模式0:阅读模式 模式1:夜灯模式 模式2:自适应模式)
int value; //存储通过光敏传感器后电灯亮度值
void setup(){
Serial.begin(9600);
pinMode(4,OUTPUT);
}
void loop(){
char LED=Serial.read(); //LED读取输入
if(LED=='A') //判断模式
mode=0;
else if(LED=='B')
mode=1;
else if(LED=='C')
mode=2;
value=analogRead(A0)/4;
control(); //调用contol
}
void control(){ //三种LED灯模式
if(mode==0){
analogWrite(4,255);
}
else if(mode==1){
analogWrite(4,90);
}
else if(mode==2){
analogWrite(4,value);
}
}