第六课——按键控制LED亮度

来自Microduino Wikipedia
跳转至: 导航搜索

目的

在第二课LED呼吸灯实验的基础上,我们增加一个按键,用按键来控制LED的亮暗程度。

原理

LED的亮暗程度是由于加在它两端的电压大小不同导致的。因此我们可以通过调节PWM(脉冲宽度)在一个周期时间内各占的时间即占空比,来让某个引脚输出不同的电压,实现led亮度逐渐亮与逐渐灭。关于PWM详细参考: http://www.geek-workshop.com/thread-125-1-1.html

设备

硬件搭建

  • 硬件原理图

把两个按键固定在面包板上,按键的一端分别接Microduino-core数据控制端D4、D5,另一端用杜邦线接到core的GND上;LED的阴极(引脚短)接Microduino的GND,阳极(引脚长)接Microduino数据控制口D11

  • 搭建好硬件电路

软件调试

  • 打开Arduino IDE, 根据你使用的核心板在Tools里面选择好Board(本次实验使用Microduino Core 328P@16M 5V),选择Serial Port,如果未能选择串口,可能是USB线接触不好或损坏,或者没安装USBTTL驱动。
  • 在Tools里打开ArduBlock,开始编程。
  • 在Control里使用“program”控件。函数说明参考前面课程
  • 在setup中,选择Pins里面的“input pullup”控件,并在后面输入4,表示把D4引脚设置为上拉输入;
  • 在loop中,我们需要对两个按钮做不同的控制,一个按钮用作调亮另一个用作调暗。因此需要选择两个if控件。
  • 注意:
使用PWM控制11号口输出,变量n的取值范围是0-255 ,所以要在大于255的时候依旧保持255不变,在小于0的时候保持0不变。

结果

  • 按up键,LED变亮;
  • 按down键,LED变暗;
  • 本次实验的图形化程序