Menu
×

Được chứng nhận

Ghi lại kiến ​​thức của bạn

Đăng nhập Đăng ký

Tạo Tài khoản Example.com.vn miễn phí để cải thiện trải nghiệm học tập của bạn

Người tìm đường và việc học của tôi

Theo dõi tiến độ học tập của bạn tại Example.com.vn và thu thập phần thưởng

Nâng cấp

Trở thành người dùng PLUS và mở khóa các tính năng mạnh mẽ (không có quảng cáo, lưu trữ, hỗ trợ, ..)

Bắt đầu từ đâu

Bạn không chắc chắn muốn bắt đầu từ đâu? Đi theo con đường được hướng dẫn của chúng tôi

Trình chỉnh sửa mã (Dùng thử)

Với trình chỉnh sửa mã trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã và xem kết quả trong trình duyệt của mình

Video

Tìm hiểu những điều cơ bản về HTML qua video hướng dẫn thú vị và hấp dẫn

Mẫu

Chúng tôi đã tạo một loạt mẫu trang web đáp ứng mà bạn có thể sử dụng - miễn phí!

Web hosting

Lưu trữ trang web của riêng bạn và chia sẻ nó với mọi người với Example.com.vn Spaces

Tạo một máy chủ

Tạo máy chủ của riêng bạn bằng Python, PHP, React.js, Node.js, Java, C#, v.v.

Làm thế nào để

Bộ sưu tập lớn các đoạn mã cho HTML, CSS và JavaScript

Khung CSS

Xây dựng các trang web nhanh và phản hồi bằng cách sử dụng khung W3.CSS miễn phí của chúng tôi

Thống kê trình duyệt

Đọc xu hướng dài hạn của việc sử dụng trình duyệt

Tốc độ gõ

Kiểm tra tốc độ đánh máy của bạn

Đào tạo AWS

Tìm hiểu dịch vụ web của Amazon

Bộ chọn màu

Sử dụng công cụ chọn màu của chúng tôi để tìm các màu RGB, HEX và HSL khác nhau. Bánh xe màu hình tròn thể hiện sự chuyển màu trong quang phổ

Trò chơi mã

Trò chơi mã hóa W3Schools! Giúp linh miêu thu thập nón thông Logo Lynx

Đặt mục tiêu

Nhận hành trình học tập được cá nhân hóa dựa trên các kỹ năng và mục tiêu hiện tại của bạn

Bản tin

Tham gia bản tin của chúng tôi và có quyền truy cập vào nội dung độc quyền mỗi tháng

Việc làm

Thuê những tài năng công nghệ hàng đầu. Hợp lý hóa quy trình tuyển dụng của bạn để có đội ngũ phù hợp hoàn hảo

Lớp học

Hãy liên hệ để sử dụng Example.com.vn Plus và các chứng chỉ với tư cách là một tổ chức giáo dục

×
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP CÁCH W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS AN NINH MẠNG DỮ LIỆU KHOA HỌC

Node.js Raspberry Pi GPIO - Đèn LED nhấp nháy


Sử dụng GPIO cho đầu ra

Trong chương này, chúng ta sẽ sử dụng Raspberry Pi và GPIO của nó để tạo ra đèn LED nhấp nháy.

Chúng tôi sử dụng Node.js với mô-đun bật tắt để điều khiển GPIO.

Để bật đèn LED, chúng tôi sử dụng chân GPIO làm "Đầu ra" và tạo tập lệnh để bật và tắt (nhấp nháy).


Chúng ta cần gì?

Trong chương này chúng ta sẽ tạo một ví dụ đơn giản để điều khiển đèn LED.

Đối với điều này bạn cần:

Nhấp vào các liên kết trong danh sách ở trên để xem mô tả về các thành phần khác nhau.

Lưu ý: Điện trở bạn cần có thể khác với điện trở chúng tôi sử dụng tùy thuộc vào loại đèn LED bạn sử dụng. Hầu hết các đèn LED nhỏ chỉ cần một điện trở nhỏ, khoảng 200-500 ohm. Nói chung, giá trị chính xác bạn sử dụng không quan trọng, nhưng giá trị của điện trở càng nhỏ thì đèn LED sẽ càng sáng.


Xây dựng mạch

Bây giờ là lúc xây dựng mạch trên Breadboard của chúng ta.

Nếu bạn chưa quen với thiết bị điện tử, chúng tôi khuyên bạn nên tắt nguồn cho Raspberry Pi. Và sử dụng thảm chống tĩnh điện hoặc dây nối đất để tránh làm hỏng nó.

Tắt Raspberry Pi đúng cách bằng lệnh:

pi@w3demopi:~ $ sudo shutdown -h now

Sau khi đèn LED ngừng nhấp nháy trên Raspberry Pi, hãy rút phích cắm nguồn ra khỏi Raspberry Pi (hoặc tắt dải nguồn mà nó được kết nối).

Chỉ cần rút phích cắm mà không tắt đúng cách có thể gây hỏng thẻ nhớ.

Raspberry Pi 3 với Breadboard. Mạch LED đơn giản

Nhìn vào hình minh họa ở trên của mạch.

  1. Trên Raspberry Pi, kết nối chân cái của dây nhảy đầu tiên với Ground . Bạn có thể sử dụng bất kỳ chân GND nào. Trong ví dụ này, chúng tôi sử dụng Chân vật lý 9 ( GND , hàng 5, cột bên trái)
  2. Trên Breadboard, nối chân đực của dây nhảy đầu tiên vào cột Ground Bus ở bên phải. Toàn bộ cột của bảng mạch của bạn được kết nối, do đó, hàng nào không quan trọng. Trong ví dụ này chúng tôi đã đính kèm nó vào hàng 1
  3. Trên Raspberry Pi, kết nối chân cái của cáp nhảy thứ hai với chân GPIO . Trong ví dụ này, chúng tôi sử dụng Chân vật lý 7 ( GPIO 4 , hàng 4, cột bên trái)
  4. Trên Breadboard, nối chân đực của dây nhảy thứ hai với hàng Tie-Point mà bạn chọn. Trong ví dụ này, chúng tôi đã kết nối nó với hàng 5, cột A
  5. Trên Breadboard, kết nối một chân của điện trở với cột Ground Bus ở phía bên phải. Toàn bộ cột của bảng mạch của bạn được kết nối, do đó, hàng nào không quan trọng. Trong ví dụ này chúng tôi đã gắn nó vào hàng 5
  6. Trên Breadboard, kết nối chân còn lại của điện trở với hàng Tie-Point bên phải mà bạn chọn. Trong ví dụ này chúng tôi đã sử dụng hàng 5, cột J
  7. Trên Breadboard, kết nối chân cực âm (chân ngắn nhất) của đèn LED với cùng hàng Tie-Point mà bạn đã kết nối điện trở từ GND tới. Trong ví dụ này chúng tôi sử dụng hàng 5, cột F
  8. Trên Breadboard, kết nối chân anode (chân dài nhất) của đèn LED với cùng hàng Tie-Point mà bạn đã kết nối jumper từ chân GPIO tới. Trong ví dụ này chúng tôi sử dụng hàng 5, cột E

Mạch của bạn bây giờ đã hoàn tất và các kết nối của bạn sẽ trông khá giống với hình minh họa ở trên.

Bây giờ là lúc khởi động Raspberry Pi và viết tập lệnh Node.js để tương tác với nó.



Tập lệnh LED nhấp nháy của Raspberry Pi và Node.js

Bây giờ chúng ta đã thiết lập xong mọi thứ, chúng ta có thể viết một đoạn script để bật và tắt đèn LED.

Bắt đầu bằng cách tạo một thư mục nơi chúng ta có thể lưu giữ các tập lệnh Node.js của mình:

pi@w3demopi:~ $ mkdir nodetest

Chuyển đến thư mục mới của chúng tôi:

pi@w3demopi:~ $ cd nodetest

Bây giờ chúng ta sẽ tạo một tệp mới có tên " blink.js " bằng Nano Editor:

pi@w3demopi:~ $ nano blink.js

Tệp hiện đã mở và có thể được chỉnh sửa bằng Nano Editor tích hợp.

Viết hoặc dán đoạn mã sau:

chớp mắt.js

var Gpio = require('onoff').Gpio; //include onoff to interact with the GPIO
var LED = new Gpio(4, 'out'); //use GPIO pin 4, and specify that it is output
var blinkInterval = setInterval(blinkLED, 250); //run the blinkLED function every 250ms

function blinkLED() { //function to start blinking
  if (LED.readSync() === 0) { //check the pin state, if the state is 0 (or off)
    LED.writeSync(1); //set pin state to 1 (turn LED on)
  } else {
    LED.writeSync(0); //set pin state to 0 (turn LED off)
  }
}

function endBlink() { //function to stop blinking
  clearInterval(blinkInterval); // Stop blink intervals
  LED.writeSync(0); // Turn LED off
  LED.unexport(); // Unexport GPIO to free resources
}

setTimeout(endBlink, 5000); //stop blinking after 5 seconds

Nhấn " Ctrl+x " để lưu mã. Xác nhận bằng " y " và xác nhận tên bằng " Enter ".

Chạy mã:

pi@w3demopi:~ $ node blink.js

Bây giờ đèn LED sẽ nhấp nháy trong 5 giây (10 lần) trước khi tắt lại!


×

Liên hệ bán hàng

Nếu bạn muốn sử dụng dịch vụ của Example.com.vn với tư cách là một tổ chức giáo dục, nhóm hoặc doanh nghiệp, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Báo cáo lỗi

Nếu bạn muốn báo cáo lỗi hoặc nếu bạn muốn đưa ra đề xuất, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Example.com.vn được tối ưu hóa cho việc học tập và đào tạo. Các ví dụ có thể được đơn giản hóa để cải thiện khả năng đọc và học. Các hướng dẫn, tài liệu tham khảo và ví dụ liên tục được xem xét để tránh sai sót, nhưng chúng tôi không thể đảm bảo tính chính xác hoàn toàn của mọi nội dung. Khi sử dụng W3Schools, bạn đồng ý đã đọc và chấp nhận các điều khoản sử dụng , chính sách cookie và quyền riêng tư của chúng tôi.

Bản quyền 1999-2024 của Refsnes Data. Đã đăng ký Bản quyền. Example.com.vn được cung cấp bởi W3.CSS .