Raspberry Pi LED

Hướng dẫn này sẽ chỉ bạn cách sử dụng Raspberry Pi để điều khiển một LED. Cụ thể, chúng ta sẽ học:

Linh Kiện Cần Thiết

1×Raspberry Pi 5
1×LED Kit
1×LED (red)
1×LED Module
1×điện trở 220 ohm
1×breadboard
1×Dây jumper
1×(Khuyến nghị) Screw Terminal Block Shield for Raspberry Pi
1×(Khuyến nghị) Raspberry Pi Prototyping Base Plate & Breadboard Kit
1×(Khuyến nghị) HDMI Touch Screen Monitor for Raspberry Pi

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về LED

Pinout của LED

LED có hai chân:

  • Chân Cathode(-): phải được kết nối với cực âm của nguồn điện
  • Chân Anode(+): phải được kết nối với cực dương của nguồn điện qua một điện trở
LED sơ đồ chân

Cách Hoạt Động

Bảng dưới đây cho biết trạng thái LED tùy theo cách kết nối nguồn điện với chân của LED

Chân cathode(-) LED Chân anode(+) LED Điều kiện Trạng thái LED
GND VCC qua điện trở BẬT
GND PWM qua điện trở BẬT, độ sáng thay đổi
GND GND bất kỳ TẮT
VCC VCC bất kỳ TẮT
VCC GND bất kỳ cháy! cẩn thận!
how LED works

Như được thể hiện trong bảng trên, bằng cách tạo tín hiệu PWM cho chân anode (+) của LED, độ sáng của LED thay đổi theo giá trị PWM. Điều này đã được giải thích chi tiết trong hướng dẫn Raspberry Pi - LED - Fade (Điều chỉnh độ sáng).

※ Lưu ý:

  • Đối với hầu hết các LED, cần có một điện trở để bảo vệ LED khỏi dòng điện. Có hai lựa chọn để đặt điện trở: giữa chân anode(+) và VCC, hoặc giữa chân cathode(-) và GND. Giá trị của điện trở phụ thuộc vào thông số kỹ thuật của LED.
  • Một số loại LED có điện trở tích hợp sẵn. Trong trường hợp này, không cần điện trở bổ sung.

Raspberry Pi - LED

Khi một chân của Raspberry Pi được thiết lập như một đầu ra digital, có thể lập trình điện áp của chân đó thành GND hoặc VCC. Kết nối chân Raspberry Pi với chân anode(+) của LED thông qua một điện trở. Điều này sẽ cho phép chúng ta điều khiển trạng thái LED thông qua lập trình.

Sơ Đồ Kết Nối

Raspberry Pi LED sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

Cách Lập Trình Raspberry Pi để Nhấp Nháy LED

Phần dưới đây cung cấp hướng dẫn cách viết code Raspberry Pi bằng Python để nhấp nháy LED.

Các Bước Nhanh

  • Đảm bảo bạn đã cài đặt Raspbian hoặc hệ điều hành tương thích Raspberry Pi khác trên Pi của mình.
  • Đảm bảo Raspberry Pi được kết nối với cùng mạng cục bộ với PC của bạn.
  • Đảm bảo Raspberry Pi của bạn được kết nối internet nếu cần cài đặt một số thư viện.
  • Nếu đây là lần đầu tiên bạn sử dụng Raspberry Pi, xem Raspberry Pi - Cài Đặt Phần Mềm
  • Kết nối PC với Raspberry Pi qua SSH bằng SSH client tích hợp trên Linux và macOS hoặc PuTTY trên Windows. Xem cách kết nối PC với Raspberry Pi qua SSH.
  • Đảm bảo bạn đã cài đặt thư viện RPi.GPIO. Nếu chưa, hãy cài đặt bằng lệnh sau:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Tạo file Python script led_blink.py và thêm code sau:
# Mã Raspberry Pi này được phát triển bởi newbiely.vn # Mã Raspberry Pi này được cung cấp để sử dụng công khai, không có ràng buộc. # Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: # https://newbiely.vn/tutorials/raspberry-pi/raspberry-pi-led import RPi.GPIO as GPIO import time # Set the GPIO mode and warning GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) # Define the GPIO18 pin number led_pin = 18 # Setup the GPIO pin as an output GPIO.setup(led_pin, GPIO.OUT) # Function to blink the LED def blink_led(): GPIO.output(led_pin, GPIO.HIGH) time.sleep(1) # LED on for 1 second GPIO.output(led_pin, GPIO.LOW) time.sleep(1) # LED off for 1 second try: # Run the LED blinking forever until a keyboard interrupt (Ctrl + C) while True: blink_led() except KeyboardInterrupt: # Cleanup GPIO settings on keyboard interrupt GPIO.cleanup()
  • Lưu file và chạy Python script bằng cách thực hiện lệnh sau trong terminal:
python3 led_blink.py
  • Kiểm tra trạng thái LED. Bạn sẽ thấy LED nhấp nháy với khoảng thời gian một giây.

Script chạy trong vòng lặp vô tận liên tục cho đến khi bạn nhấn Ctrl + C trong terminal.

Giải Thích Code

Hãy xem giải thích từng dòng trong các comment của source code!

※ Lưu ý:

Code trên sử dụng time.sleep(). Hàm này ngăn Raspberry Pi thực hiện các tác vụ khác trong khi delay đang xảy ra. Nếu dự án của bạn cần thực hiện nhiều tác vụ, hãy tránh chặn Raspberry Pi bằng cách sử dụng Raspberry Pi - LED - Nhấp Nháy Không Có Delay.

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.