Arduino实现光敏电阻简单控制LED
非常简单的方法利用Arduino实现光控LED
电路连接
我使用的是一块Arduino UNO板子,需要一个光敏电阻模块,至少一个LED发光二极管,杜邦线若干。电路连接很简单
1.光敏电阻VCC、GND连到板子的5V、GND;
2.选择光敏电阻模拟信号输出口AO(analog output)接到Arduino的A0(analog in);
3. 选择Arduino的数字引脚6(digital PWM)连接发光二极管的正极,GND连负极;可串联多个LED,或者加个1k的电阻;
4. ok就这么简单,引脚随你改都无所谓,程序跟着来就行了;
Arduino代码
用的是Arduino IDE编写
const int ledPin=6; const int idrpin=A0; const int low=0; const int high=1023; void setup() { Serial.begin(9600); //打开串口,波特率9600 } void loop() { int guangmin=analogRead(idrpin); //读入光敏电阻产生的模拟信号(范围:0~1023) Serial.print("value= "); Serial.print(guangmin); guangmin=map(guangmin,0,1023,255,0); //map函数 将0~1023范围映射到255~0 //这里反着写255,0;因为想实现随着光强增加LED变亮 Serial.print("--"); Serial.println(guangmin); analogWrite(ledPin,guangmin); //让6号引脚发出PWM波 delay(100); //延时100ms }
运行结果
可以在串口监视器里看到光敏电阻返回值随着光强而改变
点击上传自动编译并烧进Arduino,就完成啦
PS:如果感觉效果不明显,可以用螺丝刀改变光敏电阻模块上的灵敏度,或者给发光二极管串联阻值稍大点的电阻
c/c++开发分享Arduino实现光敏电阻简单控制LED地址:https://blog.csdn.net/GW_spacetime/article/details/107989055
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/597739.html