`
akiraray
  • 浏览: 88112 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

My Arduino Vol 4-LED几个扩展实验

 
阅读更多

准备清单

  1. Ardunio开发板
  2. 3mm/5mm发光二极管 若干个
  3. 200欧左右的电阻 若干个
  4. 可调电位器 一个

实验1.随时间渐变

实验说明

利用PWM信号强弱调节LED发光强度

接线图

 

 

IGPG}UFE8H1OI2B{%]5ZEY9

 

电路说明

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

 

接线图

 

5CL0BHQWPT1BI`E1MC5O)RV

 

0][KA0I%$19)WPGKJ4{9$0N

 

电路说明

  • 可调电位器是一种典型的模拟信号输入设备,一共有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至我邮箱,如果我有空会给大家解答的。

  1. LED跑马灯:逐个点亮LED灯,并熄灭其他的灯;
  2. 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.10-windows编程软件 ...

    arduino-1.8.13-windows.exe

    该资源为arduino-1.8.13-windows.exe,欢迎下载使用哦!

    Arduino-Arduino-PWM-Reader.zip

    Arduino-Arduino-PWM-Reader.zip,使用中断读取脉冲宽度调制信号的库。Arduino脉冲宽度调制读取器!,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供...

    arduino-1.8.19--windows

    arduino-1.8.19--windows

    arduino-1.8.4-windows

    最新版arduino-1.8.4-windows 最新版arduino-1.8.4-windows

    Arduino-arduino-robust-serial.zip

    Arduino-arduino-robust-serial.zip,一种简单可靠的串行通信协议。它是为Arduino设计的,但可以用于其他用途(如蓝牙、插座)。在C ARDUNO、C 、Python和RISE中的实现。,Arduino是一家开源软硬件公司和制造商社区。...

    Arduino-arduino-pid-autotuner.zip

    Arduino-arduino-pid-autotuner.zip,在Arduino和兼容板上使用Ziegler-Nichols/Relay方法自动调节PID,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统...

    Arduino-LED-Strip-HomeKit-Driver.zip

    Arduino-LED-Strip-HomeKit-Driver.zip,一个RGB-LED灯带驱动程序,可以通过使用覆盆子PI和Arduino.siri控制的RGB-LED灯带项目连接到带有家庭套件的智能家居,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21...

    Arduino-Holiday-LED-files.zip

    Arduino-Holiday-LED-files.zip,家庭助理config.yaml和arduino可寻址led文件的草图,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多灵活性。

    Arduino-audio-reactive-led-strip.zip

    Arduino-audio-reactive-led-strip.zip,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多灵活性。

    arduino-1.8.15-windows.zip

    arduino-1.8.15-windows .exe文件

    Arduino-audio-reactive-led-strip,真实的.zip

    Arduino-audio-reactive-led-strip.zip,Real-time LED strip music visualization using Python and the ESP8266 or Raspberry Pi音频反应LED灯带,Arduino是一家开源软硬件公司和制造商社区。

    Arduino HLK-V20语音控制芯片扩展程序.docx

    Arduino HLK-V20语音控制芯片扩展程序,用语音芯片指令编程10多路输出引脚控制相应电器。

    Arduino-Rings-of-Saturn-LED-Light-Music-Visualizer.zip

    Arduino-Rings-of-Saturn-LED-Light-Music-Visualizer.zip,这是用于我的“土星环”光的代码。这是一个非常粗糙的代码,现在有几个错误,但它的大部分工作。我使用了驻极体麦克风输入,和一个6通道射频接收器,带遥控...

    Arduino-IRremote-master--红外无线库

    Arduino-IRremote-master--红外无线库

    ArduPilot-Arduino-1.0.3-gcc-4.7.2-windows

    ArdupPilot定制的Arduino IDE (需要JDK1.5版本以上)

    Arduino-Adafruit-PWM-Servo-Driver-Library.zip

    Arduino-Adafruit-PWM-Servo-Driver-Library.zip,Adafruit脉冲宽度调制伺服驱动器库Adafruit PCA9685脉冲宽度调制伺服驱动器库,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的...

    arduino电子艺术--PWM直流电机控制实验

    arduino电子艺术--PWM直流电机控制实验

    Arduino IRremote(Arduino-IRremote-4.2.0)

    Arduino IRremote(Arduino-IRremote-4.2.0) Arduino-IRremote-4.2.0.tar.gz Arduino-IRremote-4.2.0.zip

    Arduino-arduino-temperature-streaming-demo.zip

    Arduino-arduino-temperature-streaming-demo.zip,Arquitectura simple de propósito general para el procesamiento en tiempo real y batch de lectaras de sensor de temperaturea sobre arduino.arduino-温度流...

Global site tag (gtag.js) - Google Analytics