• HOME
  • DỰ ÁN & MẠCH ĐIỆN
    • Lập trình
      • ARDUINO PROJECT
      • ESP8266 PROJECT
      • ESP32 PROJECT
      • RASPBERRY PI PROJECT
      • Vi điều khiển
    • Điện tử ứng dụng
      • Audio / Amplifiers
      • Nguồn điện
      • Pin sạc/Acquy và mạch sạc
      • Biến đổi AC và DC
      • Robotic
      • Cảm biến
      • LED
      • LCD
      • Động cơ bước
      • Mạch linh tinh
      • Test & Measurement
      • RF – FM
    • Nixie Clock
    • HOME AUTOMATION
    • Dân dụng
    • Công nghiệp
  • KIẾN THỨC CĂN BẢN
    • Điện tử cơ bản
    • Điện tử số
    • PCB
    • Nixie Tube
    • Raspberry Pi
    • Vi điều khiển
    • Arduino
    • IN 3D
  • DOWNLOAD
    • Phần mềm điện tử
    • Giáo trình
      • Giáo trình Điện – Điện tử
      • Giáo trình Tự Động Hóa
      • Giáo trình Viễn thông
    • Đề tài
      • Đề tài – Điện – Điện Tử
      • Đề tài – Tự Động Hóa
      • Đề tài – Viễn thông
    • Điện tử ứng dụng
    • Tài liệu nước ngoài
    • Hướng dẫn, sửa chữa
    • Sơ đồ, nguyên lý thiết bị
    • Tiêu chuẩn – Đo lường – Thử nghiệm
    • Datasheet
  • LIÊN HỆ
  • SẢN PHẨM

Mạch Điện Lý Thú

Sơ đồ nguyên lý, PCB, đồ án, tài liệu, DIY

Trang chủ » Kiến thức căn bản » Arduino » Arduino cơ bản 16: Điều khiển LED 7 đoạn bằng IR Remote sử dụng Arduino

Arduino cơ bản 16: Điều khiển LED 7 đoạn bằng IR Remote sử dụng Arduino

08/06/2025 by admin Để lại bình luận

Đã được đăng vào 10/07/2020 @ 09:33

Arduino cơ bản 16: Điều khiển LED 7 đoạn bằng IR Remote sử dụng Arduino

Mục lục hiện
Arduino cơ bản 16: Điều khiển LED 7 đoạn bằng IR Remote sử dụng Arduino
IR Remote
Sơ đồ đấu nối
Các linh kiện cần thiết cho dự án
Code

Trong nội dung bài trước mình đã giới thiệu các bạn làm thế nào để hiển thị dãy số lên LED 7 đoạn.

Tiếp tục trong chuỗi bài viết hôm nay mình sẽ hướng dẫn các bạn cách dùng IR Remote để điều khiển LED 7 đoạn

Để hiểu hơn về bài viết hôm nay các bạn có thể xem lại bài hôm trước để có thể thực hành một cách tốt nhất.

Xem thêm:

  • Arduino cơ bản 14: Điều khiển LED bằng IR Remote sử dụng Arduino
  • Arduino cơ bản 15: Sơ lược về LED 7 Đoạn ứng dụng làm bộ đếm sản phẩm sử dụng Arduino

IR Remote

Sơ đồ đấu nối

Các linh kiện cần thiết cho dự án

Tên linh kiện Số lượng
Arduino Uno R3 1
Dây cắm 15
Breadboard 1
LED 7 đoạn 1
Trở 220R 8
IR Receiver 1
Điều khiển IR Remote 1

Code

#include <IRremote.h>      
int RECV_PIN = 11;         
IRrecv irrecv(RECV_PIN);   
decode_results results;   
int currentNumber = 0;     

long codes[12]=             // this array is used to store infrared codes
{
   0xFD30CF,0xFD08F7,               // 0 ,1
   0xFD8877,0xFD48B7,               // 2 ,3
   0xFD28D7,0xFDA857,               // 4 ,5
   0xFD6897,0xFD18E7,               // 6 ,7
   0xFD9867,0xFD58A7,               // 8 ,9
   0xFD20DF,0xFD609F,               // advance, move back
};

int number[10][8] =            //the array is used to store the number 0~9
{
  {0,0,0,1,0,0,0,1},//0
  {0,1,1,1,1,1,0,1},//1
  {0,0,1,0,0,0,1,1},//2
  {0,0,1,0,1,0,0,1},//3
  {0,1,0,0,1,1,0,1},//4
  {1,0,0,0,1,0,0,1},//5
  {1,0,0,0,0,0,0,1},//6
  {0,0,1,1,1,1,0,1},//7
  {0,0,0,0,0,0,0,1},//8
  {0,0,0,0,1,1,0,1} //9
};

void numberShow(int i) {                  //this function is used to display numbers
  for(int pin = 2; pin <= 9 ; pin++){
     digitalWrite(pin, number[i][pin - 2]);
  }
}

void setup(){
  Serial.begin(9600);            
  irrecv.enableIRIn();          
  
  for(int pin = 2 ; pin <= 9 ; pin++){   
      pinMode(pin, OUTPUT);
      digitalWrite(pin, HIGH);
  }
}

void loop() {
  if (irrecv.decode(&results)) {
      for(int i = 0; i <= 11; i++){
         
         if(results.value == codes[i]&& i <= 9){
               numberShow(i);  // display number 0~9 on the digital control
               currentNumber = i;  
               Serial.println(i);
               break;        
         }
         else if(results.value == codes[10]&& currentNumber != 0){
               currentNumber--;                 
               numberShow(currentNumber);       
               Serial.println(currentNumber);  
               break;        
         }
         else if(results.value == codes[11]&& currentNumber != 9){
               currentNumber++;                 
               numberShow(currentNumber);      
               Serial.println(currentNumber); 
               break;            
         }
    } 
    
   Serial.println(results.value, HEX); 
   irrecv.resume();   
  }
}

Nguồn: arduinokit.vn

  • Share on Facebook
  • Tweet on Twitter

Thuộc chủ đề:Arduino, LED Tag với:arduino, cơ bản, code, led

Bài viết trước « Arduino cơ bản 15: Sơ lược về LED 7 Đoạn ứng dụng làm bộ đếm sản phẩm sử dụng Arduino
Bài viết sau Arduino cơ bản 13: Điều khiển động cơ quạt bằng nút nhấn sử dụng Arduino »

Reader Interactions

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Sidebar chính

Zalo hỏi đáp 24/7

Theo dõi qua mạng xã hội

  • Facebook

Bạn đang tìm gì?

Bài viết mới nhất

Các loại nguồn xung thông dụng và nguyên lý hoạt động

Các loại nguồn xung thông dụng và nguyên lý hoạt động

15/06/2025

Relay điện tử - Sử dụng TRIAC để đóng cắt thiết bị

Relay điện tử – Sử dụng TRIAC để đóng cắt thiết bị

15/06/2025

Mạch ổn áp cố định, IC ổn áp

Mạch ổn áp cố định, IC ổn áp

15/06/2025

Giám sát nhiệt độ, độ ẩm (DHT11) thông qua Thingspeak bằng NodeMCU ESP8266

15/06/2025

Phát hiện mưa (Rain Sensor) sử dụng NodeMCU ESP8266

15/06/2025

Danh mục

  • DỰ ÁN & MẠCH ĐIỆN (241)
    • Công nghiệp (16)
    • Dân dụng (29)
    • Điện tử ứng dụng (178)
      • Audio / Amplifiers (34)
      • Biến đổi AC và DC (24)
      • Cảm biến (40)
      • Động cơ bước (5)
      • Kiểm thử và đo đạc (23)
      • LCD (15)
      • LED (20)
      • Mạch linh tinh (27)
      • Nguồn điện (42)
      • Pin sạc/Acquy và mạch sạc (24)
      • RF – FM (5)
      • Robotic (2)
    • HOME AUTOMATION (23)
    • Lập trình (82)
      • ARDUINO PROJECT (39)
      • ESP32 PROJECT (6)
      • ESP8266 PROJECT (17)
      • RASPBERRY PI PROJECT (9)
      • Vi điều khiển (24)
    • Nixie Clock (3)
  • Kiến thức căn bản (170)
    • Arduino (36)
    • Điện tử cơ bản (77)
    • Điện tử số (9)
    • IN 3D (9)
    • Nixie Tube (13)
    • PCB (18)
    • Raspberry Pi (10)
    • Vi điều khiển (16)

Footer

Bài viết mới nhất

  • Các loại nguồn xung thông dụng và nguyên lý hoạt động
  • Relay điện tử – Sử dụng TRIAC để đóng cắt thiết bị
  • Mạch ổn áp cố định, IC ổn áp
  • Giám sát nhiệt độ, độ ẩm (DHT11) thông qua Thingspeak bằng NodeMCU ESP8266
  • Phát hiện mưa (Rain Sensor) sử dụng NodeMCU ESP8266
  • Điều khiển thiết bị thông qua Cayenne Mydevices và NodeMCU ESP8266

Bình luận mới nhất

  • admin trong Nguyên lý cảm biến siêu âm chống nước JSN-SR04T và sơ đồ mạch
  • Rohan trong Nguyên lý cảm biến siêu âm chống nước JSN-SR04T và sơ đồ mạch
  • Tên gì kệ tui trong Mạch Ampli 19W dùng IC LA4440
  • admin trong Đồng hồ số hiển thị trên LED 7 đoạn dùng 89S52 và DS1307

Tìm kiếm

Tất cả nội dung trên website chỉ dùng để tham khảo. Chúng tôi không chịu trách nhiệm về thông tin thành viên đăng tải lên website và xóa bài viết khi có vi phạm bản quyền tác giả.