建筑兔零基础Arduino自学记录65|光敏电阻小夜灯-6

 这次需要用到光敏电阻~

    光敏电阻

光敏电阻(又称光导管)是一种通过光照强度变化来调节自身电阻值的电子元件,它的核心特性是“遇光阻值下降”。由半导体材料制成,与人眼的感光范围接近。无光照时电阻极高(可达1.5MΩ),几乎不导电。强光下电阻可降至1KΩ以下。

需要元件:

连接步骤:

将光敏电阻与20K欧姆电阻串联

光敏电阻另一端接控制板GND端口

电阻另一端接控制板5V端口

在光敏电阻与普通电阻连接处引出跳线接A0端口

LED阴极接地,阳极接1k欧姆电阻接数字端口8

加入代码运行:

原理:

光照充足时​(不遮光):
光敏电阻阻值低,此时电路中大部分电压被光敏电阻“分压”,导致后续控制电路(如三极管、继电器或可控硅)无法导通,小灯保持熄灭。

光照不足时​(遮光):
光敏电阻阻值升高,电路分压比例改变,控制电路被触发导通,小灯点亮。

简单理解,电阻顾名思义就是阻止电流通过,所以有光时有力量阻止更多电流通过,没光时就没用,所以能正常亮。

const byte LED=8;
void setup(){
  //put your setup code here,to run once:
Serial.begin(9600);
pinMode(LED,OUTPUT);
}

void loop(){
// put your main code here,to run repeatedly:
int val=analogRead(A0);
Serial.println(val);
delay(500);
if(val>=600){
digitalWrite(LED,HIGH);
}else{
digitalWrite(LED,LOW);
}
}

代码解读:

const byte LED=8;    //设置端口8为LED输出引脚
void setup(){
  //put your setup code here,to run once:
Serial.begin(9600);  //初始化端口
pinMode(LED,OUTPUT);   //设置输出模式
}

void loop(){
// put your main code here,to run repeatedly:
int val=analogRead(A0);   //A0端口接收变量val
Serial.println(val);      //输出val值
delay(500);               //延时500ms
if(val>=600){             //选600作为LED临界值(可调)
digitalWrite(LED,HIGH);   //if判断是否点亮,>600,高电平,点亮
}else{
digitalWrite(LED,LOW);
}
}

补充:FritzingProteus

补充:学习过程中遇到了两个平台FritzingProteus,在此做一个简单记录:

 通过两个表格快速了解其差别

 结论就是现阶段初学,用Tinkercad就够了!一些教程会涉及其他软件,是因为老师厉害!

Fritzing主要画原理图,复杂的比Tinkercad画的好看。Proteus主要是模拟测试。

本次就到这啦~一起试试吧~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值