- Arduino - 教程
- Arduino - 概述
- Arduino - Board Description
- Arduino - 安装
- Arduino - 程序结构
- Arduino - 数据类型
- Arduino - Variables & 常量
- Arduino - 运算符
- Arduino - 控制声明( Control Statements)
- Arduino - 循环
- Arduino - 功能( Functions)
- Arduino - 字符串( Strings)
- Arduino - String对象( String Object)
- Arduino - Time
- Arduino - 阵列( Arrays)
- Arduino - I/O Functions
- Arduino - Advanced I/O Function
- Arduino - 字符函数( Character Functions)
- Arduino - 数学图书馆( Math Library)
- Arduino - 三角函数( Trigonometric Functions)
- Arduino - Due & Zero
- Arduino - 脉冲宽度调制( Pulse Width Modulation)
- Arduino - 随机数( Random Numbers)
- Arduino - 中断( Interrupts)
- Arduino - 沟通( Communication)
- Arduino - 内部集成电路( Inter Integrated Circuit)
- Arduino - 串行外设接口( Serial Peripheral Interface)
- Arduino - 闪烁LED( Blinking LED)
- Arduino - 褪色LED( Fading LED)
- Arduino - 读取模拟电压( Reading Analog Voltage)
- Arduino - LED条形图( LED Bar Graph)
- Arduino - 键盘注销( Keyboard Logout)
- Arduino - 键盘消息( Keyboard Message)
- Arduino - 鼠标按钮控制( Mouse Button Control)
- Arduino - 键盘串口( Keyboard Serial)
- Arduino - 湿度传感器( Humidity Sensor)
- Arduino - 温度传感器( Temperature Sensor)
- Arduino - Water Detector / Sensor
- Arduino - PIR传感器( PIR Sensor)
- Arduino - 超声波传感器( Ultrasonic Sensor)
- Arduino - 连接开关( Connecting Switch)
- Arduino - 直流电机( DC Motor)
- Arduino - 伺服电机( Servo Motor)
- Arduino - 步进电机( Stepper Motor)
- Arduino - 音调库( Tone Library)
- Arduino - 无线通信( Wireless Communication)
- Arduino - 网络通信( Network Communication)
- Arduino - 有用的资源
- Arduino - 讨论
- Show Example 1
- Show Example 2
- Show Example 3
- Show Example 4
- Show Example 5
- If statement
- If …else statement
- If…else if …else statement
- switch case statement
- Conditional Operator ? :
- while循环
- do…while循环
- for循环
- Nested循环
- Infinite循环
- delay () function
- delayMicroseconds () function
- millis () function
- micros () function
- 将数组传递给函数(Passing Arrays to Functions)
- 多维数组(Multi-Dimensional Arrays)
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
Arduino - 褪色LED( Fading LED)
此示例演示了如何使用analogWrite()函数淡化LED。 AnalogWrite使用脉冲宽度调制(PWM),在打开和关闭之间以不同的比率非常快速地打开和关闭数字引脚,以产生衰落效果。
组件的要求 (Components Required)
您将需要以下组件 -
- 1 × Breadboard
- 1×Arduino Uno R3
- 1×LED
- 1×330Ω电阻器
- 2 × Jumper
过程 (Procedure)
按照电路图并连接面包板上的组件,如下图所示。
Note - 要找出LED的极性,请仔细查看。 两个腿中较短的一个朝向灯泡的平坦边缘指示负端子。
像电阻器这样的元件需要将它们的端子弯成90°角,以便正确地安装面包板插座。 您也可以缩短端子。
草图 (Sketch)
在您的计算机上打开Arduino IDE软件。 用Arduino语言编码将控制你的电路。 单击“新建”打开新草图文件。
Arduino代码 (Arduino Code)
/*
Fade
This example shows how to fade an LED on pin 9 using the analogWrite() function.
The analogWrite() function uses PWM, so if you want to change the pin you're using, be
sure to use another PWM capable pin. On most Arduino, the PWM pins are identified with
a "~" sign, like ~3, ~5, ~6, ~9, ~10 and ~11.
*/
int led = 9; // the PWM pin the LED is attached to
int brightness = 0; // how bright the LED is
int fadeAmount = 5; // how many points to fade the LED by
// the setup routine runs once when you press reset:
void setup() {
// declare pin 9 to be an output:
pinMode(led, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
// set the brightness of pin 9:
analogWrite(led, brightness);
// change the brightness for next time through the loop:
brightness = brightness + fadeAmount;
// reverse the direction of the fading at the ends of the fade:
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ;
}
// wait for 30 milliseconds to see the dimming effect
delay(300);
}
Code to Note
在将引脚9声明为LED引脚后,代码的setup()函数无关。 您将在代码的主循环中使用的analogWrite()函数需要两个参数:一,告诉函数写入哪个引脚,另一个指示要写入的PWM值。
为了关闭和打开LED,逐渐将PWM值从0(一直关闭)增加到255(一直开启),然后再回到0,以完成循环。 在上面给出的草图中,使用称为亮度的变量设置PWM值。 每次循环时,它都会增加变量fadeAmount的值。
如果亮度处于其值的任一极端(0或255),则fadeAmount将更改为负值。 换句话说,如果fadeAmount为5,则将其设置为-5。 如果是-5,则将其设置为5.下一次循环时,此更改也会导致亮度改变方向。
analogWrite()可以非常快速地改变PWM值,因此草图末尾的延迟控制着衰落的速度。 尝试更改延迟的值,看看它如何改变衰落效果。
结果 (Result)
您应该看到LED亮度逐渐变化。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论