Phần 3: Lập trình Python để điều khiển LED
1. Giới thiệu về lập trình Python và cách viết mã cơ bản, 2. Hướng dẫn cài đặt thư viện RPi.GPIO, 3. Viết mã để nhấp nháy đèn LED, 4. Giải thích các dòng mã và cách chúng hoạt động, 5. Chạy chương trình và kiểm tra kết quả.
Phần 3: Lập trình Python để điều khiển LED
1. Giới thiệu về lập trình Python và cách viết mã cơ bản
Lập trình Python là một ngôn ngữ lập trình mạnh mẽ và dễ học, được sử dụng rộng rãi trong nhiều lĩnh vực khác nhau, bao gồm cả lập trình nhúng và IoT. Python có cú pháp rõ ràng, dễ hiểu, cho phép lập trình viên nhanh chóng phát triển và thử nghiệm các ý tưởng của mình.
Trong dự án này, chúng ta sẽ sử dụng Python để điều khiển một đèn LED thông qua GPIO (General Purpose Input/Output) của Raspberry Pi. Trước khi bắt đầu, bạn cần đảm bảo rằng Raspberry Pi của bạn đã được cài đặt hệ điều hành Raspbian và có kết nối với internet để dễ dàng cài đặt các thư viện cần thiết.
2. Hướng dẫn cài đặt thư viện RPi.GPIO
Thư viện RPi.GPIO là một thư viện rất hữu ích giúp bạn điều khiển chân GPIO trên Raspberry Pi thông qua Python. Để cài đặt thư viện này, bạn cần mở terminal trên Raspberry Pi và thực hiện các bước sau:
- Đảm bảo rằng hệ thống của bạn đã được cập nhật:
- Cài đặt thư viện RPi.GPIO:
sudo apt-get update
sudo apt-get install python3-rpi.gpio
Sau khi hoàn tất, bạn đã sẵn sàng để viết mã điều khiển LED.
3. Viết mã để nhấp nháy đèn LED
Để điều khiển đèn LED, bạn cần viết một chương trình đơn giản bằng Python. Dưới đây là mã mẫu để nhấp nháy đèn LED:
import RPi.GPIO as GPIO
import time
# Thiết lập chế độ đánh số chân
GPIO.setmode(GPIO.BCM)
# Thiết lập chân GPIO 18 là chân xuất
GPIO.setup(18, GPIO.OUT)
try:
while True:
GPIO.output(18, GPIO.HIGH) # Bật LED
time.sleep(1) # Chờ 1 giây
GPIO.output(18, GPIO.LOW) # Tắt LED
time.sleep(1) # Chờ 1 giây
except KeyboardInterrupt:
pass
finally:
GPIO.cleanup() # Dọn dẹp thiết lập GPIO
Trong đoạn mã trên, chúng ta đã thiết lập chân GPIO 18 để điều khiển đèn LED. Chương trình sẽ bật và tắt đèn LED sau mỗi giây.
4. Giải thích các dòng mã và cách chúng hoạt động
Hãy cùng phân tích chi tiết các dòng mã trong chương trình:
import RPi.GPIO as GPIO: Nhập thư viện RPi.GPIO để có thể sử dụng các hàm điều khiển chân GPIO.import time: Nhập thư viện time để sử dụng hàm chờ (sleep).GPIO.setmode(GPIO.BCM): Thiết lập chế độ đánh số chân GPIO theo chuẩn BCM (Broadcom SOC channel).GPIO.setup(18, GPIO.OUT): Thiết lập chân GPIO 18 là chân xuất (output), có nghĩa là chúng ta sẽ gửi tín hiệu từ Raspberry Pi tới chân này.while True:: Bắt đầu một vòng lặp vô hạn để liên tục bật và tắt đèn LED.GPIO.output(18, GPIO.HIGH): Bật đèn LED bằng cách gửi tín hiệu HIGH tới chân GPIO 18.time.sleep(1): Chờ trong 1 giây trước khi thực hiện bước tiếp theo.GPIO.output(18, GPIO.LOW): Tắt đèn LED bằng cách gửi tín hiệu LOW tới chân GPIO 18.finally:: Đảm bảo rằng khi thoát chương trình, các thiết lập GPIO sẽ được dọn dẹp để tránh xung đột cho các lần chạy sau.
5. Chạy chương trình và kiểm tra kết quả
Để chạy chương trình, bạn cần lưu mã Python vào một tệp. Bạn có thể thực hiện như sau:
- Mở terminal và tạo một tệp mới:
- Sao chép và dán mã Python vào tệp, sau đó nhấn
Ctrl + X, sau đóYvàEnterđể lưu. - Chạy chương trình:
nano blink_led.py
python3 blink_led.py
Khi chạy chương trình, bạn sẽ thấy đèn LED nhấp nháy với tần suất 1 giây bật và 1 giây tắt.
Lưu ý: Nếu bạn muốn dừng chương trình, hãy nhấn Ctrl + C trong terminal.
Chúc mừng bạn đã hoàn thành phần lập trình để điều khiển đèn LED bằng Python! Hãy tiếp tục khám phá và thực hiện các dự án IoT khác với Raspberry Pi.
