步骤1:
从基础开始:将板连接到gnd和5v引脚,并确保您有跨接器将正极和负极导轨连接到面包板的另一侧,使它们“活动”,并帮助您构建电路而不会过多地跨过面包板。
我们要创建一个独立运行的led序列。
让我们连接第一个led。 led的正极连接到引脚13。led的负极将连接一个220欧姆的电阻,然后将其连接到gnd。
第2步:第2步-为其他4个led接线
现在按照相同的方案为其他4个led接线:正分别使用220欧姆电阻将每个引脚分别连接到引脚12、11、10和9,将负极分别接地。
led就绪:您将能够通过单独的pin单独控制它们。
第3步:第3步-连接压电
我们希望蜂鸣器响起。为此,我们将使用压电式蜂鸣器,因此进行接线。
负极线连接到gnd,正极线首先连接到100欧姆电阻,而不是引脚7。正如我之前所说,我在网上找到的其他项目中建议使用100欧姆电阻。
步骤4:步骤4-为光伏电池接线
光伏电池是一个简单的电阻器,暴露后会导电点亮。因此,在零光下,它阻止了100%的电流,而在全光下,它允许电流流过。 arduino“读取”的方式是零光返回值为0,全光返回值为1024。
光伏电池没有正负极。因此,您需要将一侧连接到电路板的正极。负极侧的接线有些复杂:您将使用500欧姆电阻和(b)将其两者(a)连接到负极轨,并直接连接到a0引脚。
电路已准备就绪。让我们看一下代码。
步骤5:步骤5-代码
您将在下面找到完整的代码,以进行剪切和粘贴。它具有//注释,因此您可以了解发生了什么。
这就是代码的作用:
1-传感器读取光水平,将其测量范围从0到1024
2-我们“翻译”
3-对于led,我们将光的读数转换为闪烁的毫秒数。光线越少,闪烁的速度就越慢。进行一些测试,即使光线很强,它的读数也不会超过700或800(很难达到1024),因此我将700用作“最高”光线水平。由于map功能的工作方式,如果光线达到700以上,它将把闪烁时间变成一个负数-整个事情都崩溃了。因此,我创建了一个规则,即blink_time不能短于20毫秒。
4-led依次点亮(即第一个led点亮,然后关闭时,下一个点亮等等)
5-对于蜂鸣器,我们将光的读数(0-1024)转换为赫兹(120到1500),因此,光越多,音高就越高。
6-蜂鸣器在第一个,第三个和第五个led同时发出蜂鸣声(并持续销售时间),然后随着led暂停而暂停。这样可以以相同的节奏产生脉动效果,光和声音。
就是这样。好好享受!
代码:
///带有蜂鸣声和指示灯序列的光传感器,如机场
//用于闪烁的整数
int blink_time = 20;//创建此变量以用于眨眼和间隔时间
int light_level = 0;//创建此变量以用于光照级别
int light_pin = a0;//引脚0将用于光电管
//蜂鸣器的输入
int buzz_tone = 300;//为蜂鸣器的声音创建此变量
int buzz_tone_max = 1500;//蜂鸣音的最大赫兹
int buzz_tone_min = 120;//最小值为蜂鸣音
void setup(){
pinmode(9,output);//将品脱9-13初始化为led的输出
pinmode(10,output);
pinmode(11,output);
pinmode(12,output);
pinmode(13,output);
pinmode(7,output);//设置蜂鸣器-引脚7作为蜂鸣器的输出
serial.begin(9600); serial.println( “就绪”);//以9600波特打开串行端口以监视变量的行为
}
void loop(){
light_level = analogread(light_pin);//读取灯光水平
blink_time =地图(light_level,0、700、300、1);//如果灯光强度(blink_time 《= 20){blink_time = 20;}//设置闪烁时间的下限,则根据灯光强度(更多灯光,更快速度)
//。因为光线水平可以超过700,所以映射功能可能导致闪烁时间变为负值,在这种情况下程序将冻结。
//根据灯光水平设置蜂鸣音(更多灯光,更多赫兹,更高音调)
buzz_tone =地图(light_level,0、700,buzz_tone_min,buzz_tone_max);
//在串行监视器中打印所有变量,以供您查看正在发生的情况
serial.print(“ light level =”);
serial.print(light_level);
serial.print(“闪烁时间=”);
serial.print(blink_time);
serial.print(“ buzz_tone =”);
serial.print(buzz_tone);
serial.println(“”);
//第一个led
音(7,buzz_tone);////在第一个led亮起的同时开始发出蜂鸣声
digitalwrite(9,high);//打开led(high是电压电平)
delay(blink_time);//等待[blink time]
digitalwrite(9,low);//通过降低电压来关闭led
notone(7);//停止发出哔哔声
//在此不发出哔哔声
//在此不发出哔哔声,我只希望发出三声哔哔声,因此将它们放在第一,第三和第五个指示灯
digitalwrite(10,high);//打开led(high是电压电平)
delay(blink_time);//等待[blink time]
digitalwrite(10,low);//通过降低电压来关闭led
//第三个led
tone(7,buzz_tone);//beep
digitalwrite(11,high);//打开led(high是电压电平)
delay(blink_time);//等待[blink time]
digitalwrite(11,low);//通过降低电压来关闭led
notone(7);
//第四个led
digitalwrite(12,high);//打开led(high是电压电平)
delay(blink_time);//等待[blink time]
digitalwrite(12,low);//通过降低电压来关闭led
//第五个led
tone(7,buzz_tone);
digitalwrite(13,high);//打开led(high是电压电平)
delay(blink_time);//等待[blink time]
digitalwrite(13,low);//通过降低电压来关闭led
notone(7);
延迟(5 * blink_time);//在一系列闪烁的led +蜂鸣声之间暂停
}
三星GalaxyS9/S9+体验 到底怎么样
DRAM需求上升 NVIDIA和AMD显卡下一年价格要涨?
如何用深度学习做图像分类?教给你教程和代码
可生物降解的纳米机器人问世,未来将用于诊断疾病向人体内输送药物
手动撕破强度测试仪测试过程的详细解析
带有蜂鸣器和LED闪烁的Arduino光传感器
模拟IC无源器件特性
工频变压器的原理_工频变压器与高频变压器的区别
多用报警卡电路图
腾讯与长沙签订合作协议,打造长沙本地化智慧应用与解决方案
Stadia备受关注 云游戏究竟有何魅力
全球微电网产能提升,太阳能光伏和柴油容量之间差距迅速缩小
iOS10.3.3Beta4更新了什么?iOS10.3.3 Beta4更新内容一览,老用户且用且珍惜,iOS11正式版月底就来
UWB高精度定位系统在智慧电厂的应用
工业网络的太阳能和热源获取能量收集技术
真菌毒素检测仪的功能特点
iOS 10最全隐藏功能盘点!你想要的全都有!
端面刻蚀技术:为云数据中心点亮 通往400G及更高速率之路
戴尔安全软件程序确保远程工作者免受BIOS攻击
MiniLED概念爆发2022年迎来规模化应用