CÁCH 1:
---------Code Start-------------------------------------------------------------------
/* Arduino Code làm 1 LED sáng tăng dần rồi sáng giảm dần
by Thuthuatarduino.blogspot.com 01/07/2017.
*/
int del=5; // biến delay.
void setup()
{
pinMode(3, OUTPUT); // Chân 3 PWM nối với LED.
}
void loop()
{
// Tăng dần độ rộng xung từ 0 đến 255.
for(int a=0; a<256; a++)
{
analogWrite(3, a);
delay(del);
}
// Giảm dần độ rộng xung từ 255 về 0.
for(int a=255; a>=0; a--)
{
analogWrite(3, a);
delay(del);
}
delay(200);
}
---------Code End-------------------------------------------------------------------
**Chú ý: tăng hay giảm giá trị biến del để tăng nhanh hay giảm nhanh tốc độ sáng dần, mờ dần của LED.
CÁCH 2: Định nghĩa chân PWM nối với LED.
---------Code Start-------------------------------------------------------------------
/* Arduino Code làm 1 LED sáng tăng dần rồi sáng giảm dần
by Thuthuatarduino.blogspot.com 01/07/2017.
*/
#define LED 3 // Chân 3, 6, 9, 10, 11 là các chân PWM.
int del=5; // biến delay.
void setup()
{
pinMode(LED, OUTPUT); // Chân 3 PWM nối với LED.
}
void loop()
{
// Tăng dần độ rộng xung từ 0 đến 255.
for(int a=0; a<256; a++)
{
analogWrite(LED, a);
delay(del);
}
// Giảm dần độ rộng xung từ 255 về 0.
for(int a=255; a>=0; a--)
{
analogWrite(LED, a);
delay(del);
}
delay(200);
}
---------Code End-------------------------------------------------------------------
---------Code Start-------------------------------------------------------------------
/* Arduino Code điều khiển 5 LED lần lượt sáng tăng dần rồi tắt.
by Thuthuatarduino.blogspot.com 07/08/2017.
*/
#define LED1 3
#define LED2 5
#define LED3 6
#define LED4 9
#define LED5 10
int del = 5;
void setup() {
// thiết lặp các chân điều khiển là OUTPUT.
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(LED5, OUTPUT);
}
void loop() {
// LED1 sáng tăng dần rồi tắt.
for(int i=0; i<256; i++){
analogWrite(LED1, i);
delay(del);
}
analogWrite(LED1, 0); // tắt LED1.
// LED2 sáng tăng dần rồi tắt.
for(int i=0; i<256; i++){
analogWrite(LED2, i);
delay(del);
}
analogWrite(LED2, 0);
// LED3 sáng tăng dần rồi tắt.for(int i=0; i<256; i++){
analogWrite(LED3, i);
delay(del);
}
analogWrite(LED3, 0);
// LED4 sáng tăng dần rồi tắt.for(int i=0; i<256; i++){
analogWrite(LED4, i);
delay(del);
}
analogWrite(LED4, 0);
// LED5 sáng tăng dần rồi tắt.for(int i=0; i<256; i++){
analogWrite(LED5, i);
delay(del);
}
analogWrite(LED5, 0);
}
---------Code End-------------------------------------------------------------------
NÂNG CAO 2:
NÂNG CAO 3: