准备清单
- Ardunio开发板
- 3mm/5mm发光二极管 若干个
- 200欧左右的电阻 若干个
- 可调电位器 一个
实验1.随时间渐变
实验说明
利用PWM信号强弱调节LED发光强度
接线图
电路说明
PWM信号是一种利用数字信号来模拟“模拟信号”的一种技术(真拗口)。其值的范围为[0,255]根据信号强弱(电压)的不同,LED发光的强度也会不同。
程序部分
int LED_PIN=11;
void setup(){
pinMode(LED_PIN,OUTPUT);
}
void loop(){
for(int pwm=0;pwm<255;pwm++){
analogWrite(LED_PIN,pwm);
delay(500);
}
程序说明
- for(;;):for循环和大部分高级编程语言一样的用法。这里不做过度的描述;
- analogWrite:向一个PIN脚输出模拟信号即PWM信号;
- 整个for循环内就是不停的增加PWM的值从而使LED灯不停的变量。当变为最亮后,for循环结束。loop函数重新执行,则又初始化了pwm变量为0,重新执行for循环。
实验2 可调电位器控制LED
接线图
电路说明
- 可调电位器是一种典型的模拟信号输入设备,一共有3个脚,左右两个是不分极性的电源脚,中间一个是根据旋钮的位置的不同输出不同的模拟型号,其范围为[0,1023]
- 根据不同模拟信号的输入值,产生对应的信号输出值改变LED的亮度
程序部分
int LED_PIN=11;
int POT_PIN=A0;
void setup(){
pinMode(LED_PIN,OUTPUT);
}
void loop(){
int potValue=analogRead(POT_PIN);
int pwmValue=map(potValue, 0, 1023, 0, 255);
digitalWrite(LED_PIN,pwmValue);
}
程序说明
- analogRead于anaglogWrite是一对,从一只引脚读出模拟值;
- map(srcMin,srcMax,desMin,desMax):将集合[a,b]映射到集合[c,d]中去。这里是讲可调电位器的模拟信号集合[0,1023]映射成PWM信号的[0,255],这样就不用自己在去写一个转换的函数啦~是不是很方便呀。
扩展实验
这里有几个扩展实验值得基础不太好的同学多做一下,如果有什么问题的可以给我留言或者发mail至我邮箱,如果我有空会给大家解答的。
- LED跑马灯:逐个点亮LED灯,并熄灭其他的灯;
- LED渐变跑马灯:LED依照次序一个一个从最亮慢慢变暗直至熄灭,在熄灭后重新恢复至最亮,循环渐变。
分享到:
相关推荐
编程软件 arduino-1.8.10-windows编程软件 arduino-1.8.10-windows编程软件 arduino-1.8.10-windows编程软件 arduino-1.8.10-windows编程软件 arduino-1.8.10-windows编程软件 arduino-1.8.10-windows编程软件 ...
在压缩包内的文件名称列表中,除了主要的安装文件"arduino-1.8.13-windows.exe"外,还有一个名为"arduino-1.8.13-windows.exe.txt"的文本文件。这个文件很可能是包含安装指南、许可协议或版本信息的文本文档,用户在...
标题中的"arduino-1.8.19--windows"指的是适用于Windows操作系统的Arduino IDE版本1.8.19。这个IDE是Arduino编程的核心工具,用户可以通过它编写、上传代码到各种Arduino开发板。 Arduino IDE是Arduino项目的官方...
最新版arduino-1.8.4-windows 最新版arduino-1.8.4-windows
在这个“arduino-1.8.9-windows”压缩包中,包含的是适用于Windows操作系统的Arduino IDE的安装程序。这个版本(1.8.9)是官方稳定版,提供了对各种Arduino开发板的支持以及众多库和功能。 在Windows 10系统下,...
Arduino-Arduino-PWM-Reader.zip,使用中断读取脉冲宽度调制信号的库。Arduino脉冲宽度调制读取器!,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供...
这个“arduino-1.8.9-windows.rar”压缩包包含了适用于Windows操作系统的Arduino IDE的安装程序,版本号为1.8.9。此版本发布于2019年12月17日,是从官方渠道下载的,因此可以确保其安全性和可靠性。 1. **Arduino ...
标题中的"arduino-1.8.12-windows.exe.7z"表明这是一个针对Windows操作系统的Arduino IDE的压缩文件,版本号为1.8.12,并且采用了7-Zip的压缩格式。7-Zip是一种开源的、免费的压缩软件,以其高压缩率和对多种压缩...
总的来说,"arduino-1.0.5-windows"是一个专为Windows用户设计的易于使用的开发工具,帮助编程爱好者和电子工程师快速开发基于Arduino的创意项目。其中文界面的特性使得更多中国用户能够无障碍地进入这个领域,体验...
《Arduino HLK-V20语音控制芯片扩展程序》 本文主要介绍如何利用Arduino与HLK-V20语音控制芯片进行交互,实现对多种家用电器的智能控制。HLK-V20是一款集成语音识别功能的芯片,它能接收特定的语音指令,并将其转化...
这个"arduino-1.8.15-windows.zip"压缩包包含了Arduino IDE的Windows版本,该IDE是用户编写和上传Arduino程序的主要工具。版本1.8.15是一个稳定且功能丰富的更新,提供了对各种Arduino控制器的支持,以及方便的代码...
Arduino-arduino-robust-serial.zip,一种简单可靠的串行通信协议。它是为Arduino设计的,但可以用于其他用途(如蓝牙、插座)。在C ARDUNO、C 、Python和RISE中的实现。,Arduino是一家开源软硬件公司和制造商社区。...
Arduino-IRremote是一个开源库,专为Arduino爱好者和开发者设计,用于接收和发送红外(IR)信号,从而控制各种红外设备,如电视、空调、DVD播放器等。这个库极大地扩展了Arduino的功能,使得与红外遥控设备交互变得...
Arduino-LED-Strip-HomeKit-Driver.zip,一个RGB-LED灯带驱动程序,可以通过使用覆盆子PI和Arduino.siri控制的RGB-LED灯带项目连接到带有家庭套件的智能家居,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21...
Arduino-IRremote是一个开源库,专为Arduino用户设计,用于接收和发送红外(IR)信号。这个库是基于官方库进行修改的,使其更易用,功能更强大,适合初学者和有经验的开发者。本文将深入探讨这个库的核心原理、功能、...
Arduino-1.8.12-win.exe
Arduino-Holiday-LED-files.zip,家庭助理config.yaml和arduino可寻址led文件的草图,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多灵活性。
Arduino-audio-reactive-led-strip.zip,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多灵活性。
Arduino-audio-reactive-led-strip.zip,Real-time LED strip music visualization using Python and the ESP8266 or Raspberry Pi音频反应LED灯带,Arduino是一家开源软硬件公司和制造商社区。
这个"arduino-1.8.1-windows.rar"压缩包文件是专门为Windows操作系统提供的Arduino IDE的安装程序,版本号为1.8.1。 Arduino IDE是编写Arduino程序的主要工具,它提供了一个简洁的编程环境,使得用户可以通过简单的...