Sunday, July 30, 2017

Coding - dùng chân PWM điều khiển 1 LED sáng tăng dần rồi sáng giảm dần (Cơ bản 3).

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-------------------------------------------------------------------

NÂNG CAO 1: 
---------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:

1 comment: