Tải bản đầy đủ (.pdf) (6 trang)

Đầu vào kỹ thuật số và Đầu ra kỹ thuật số của ESP8266 NodeMCU (Arduino IDE)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (425.06 KB, 6 trang )

Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

14:28 05/04/2023

Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266
NodeMCU (Arduino IDE)
Trong hướng dẫn bắt đầu này, bạn sẽ học cách đọc đầu vào kỹ thuật số như công tắc
nút và điều khiển đầu ra kỹ thuật số như đèn LED bằng cách sử dụng bo mạch ESP8266
NodeMCU với Arduino IDE.

điều kiện tiên quyết
Chúng tơi sẽ lập trình ESP8266 bằng Arduino IDE. Vì vậy, hãy đảm bảo rằng bạn đã cài
đặt tiện ích bổ sung bảng ESP8266 trước khi tiếp tục:
Cài đặt Bảng ESP8266 trong Arduino IDE (Windows, Mac OS X, Linux)

Đầu ra kỹ thuật số điều khiển ESP8266 NodeMCU
Trước tiên, bạn cần đặt GPIO mà bạn muốn điều khiển làm OUTPUT . Sử dụng hàm
pinMode() như sau: pinMode(GPIO,

OUTPUT);

Để kiểm soát đầu ra kỹ thuật số, bạn chỉ cần sử dụng hàm digitalWrite() , hàm này chấp
nhận làm đối số, GPIO (số int) mà bạn đang đề cập đến và trạng thái, CAO hoặc THẤP .
digitalWrite(GPIO, STATE);

Hãy xem Hướng dẫn tham khảo GPIO của ESP8266 để tìm hiểu GPIO nào phù hợp hơn
để sử dụng làm đầu ra.

/>
1/6



14:28 05/04/2023

Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

ESP8266 NodeMCU Đọc đầu vào kỹ thuật số
Đầu tiên, đặt GPIO bạn muốn đọc là INPUT , sử dụng hàm pinMode() như sau:
pinMode(GPIO, INPUT);

Để đọc một đầu vào kỹ thuật số, chẳng hạn như một nút, bạn sử dụng hàm digitalRead()
, chấp nhận làm đối số, GPIO (số int) mà bạn đang đề cập đến. digitalRead(GPIO);
Hãy xem Hướng dẫn tham khảo GPIO của ESP8266 để tìm hiểu GPIO nào phù hợp hơn
để sử dụng làm đầu vào.

Ví dụ dự án
Để chỉ cho bạn cách sử dụng đầu vào kỹ thuật số và đầu ra kỹ thuật số, chúng tơi sẽ xây
dựng một ví dụ dự án đơn giản với nút bấm và đèn LED. Chúng ta sẽ đọc trạng thái của
nút ấn và bật đèn LED tương ứng như minh họa trong hình dưới đây.

Sơ đồ
Trước khi tiếp tục, bạn cần lắp ráp một mạch có đèn LED và nút bấm. Chúng tơi sẽ kết
nối đèn LED với GPIO 5 (D1) và nút bấm với GPIO 4 (D2).

Bộ phận bắt buộc
Dưới đây là danh sách các bộ phận bạn cần để xây dựng mạch:

/>
2/6



Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

14:28 05/04/2023

ESP8266 (đọc Bảng dành cho nhà phát triển ESP8266 tốt nhất )
ĐÈN LED 5mm
điện trở 330
Ohm nút nhấn
điện trở 10k Ohm
bánh mì dây
nhảy
Bạn có thể sử dụng các liên kết trước hoặc truy cập trực tiếp vào
MakerAdvisor.com/tools để tìm tất cả các bộ phận cho dự án của mình với giá tốt nhất!

Mã số
Sao chép đoạn mã sau vào Arduino IDE của bạn.
// Complete Instructions: />// set pin numbers
const int buttonPin = 4;
const int ledPin = 5;

// the number of the pushbutton pin
// the number of the LED pin

// variable for storing the pushbutton status
int buttonState = 0;

/>
3/6



Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

14:28 05/04/2023

void setup() {
// initialize the pushbutton pin as an input
pinMode(buttonPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the state of the pushbutton value
buttonState = digitalRead(buttonPin);
//
check if the pushbutton is pressed.
// if
it is, the buttonState is HIGH
if
(buttonState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
} else {
// turn LED off
digitalWrite(ledPin, LOW);
}
}

Xem mã thơ

Cách thức hoạt động của mã

Trong hai dịng sau, bạn tạo các biến để gán chân:
const int buttonPin = 4;
const int ledPin = 5;

Nút được kết nối với GPIO 4 và đèn LED được kết nối với GPIO 5 . Khi sử dụng Arduino
IDE với ESP8266, 4 tương ứng với GPIO 4 và 5 tương ứng với GPIO 5 .
Tiếp theo, bạn tạo một biến để giữ trạng thái của nút. Theo mặc định, nó là 0 (khơng
được nhấn). int

buttonState = 0;

Trong setup() , bạn khởi tạo nút là INPUT và đèn LED là OUTPUT . Để làm được điều
đó, bạn sử dụng hàm pinMode() chấp nhận mã pin mà bạn đang đề cập đến và chế độ:
INPUT hoặc OUTPUT .
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);

Trong vòng lặp () là nơi bạn đọc trạng thái nút và đặt đèn LED tương ứng.
Trong dòng tiếp theo, bạn đọc trạng thái của nút và lưu nó vào biến buttonState . Như
chúng ta đã thấy trước đây, bạn sử dụng hàm digitalRead() .

buttonState

=

digitalRead(buttonPin);

/>
4/6



14:28 05/04/2023

Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

Câu lệnh if sau đây, kiểm tra xem trạng thái nút có ở mức CAO hay khơng . Nếu đúng
như vậy, nó sẽ bật đèn LED bằng cách sử dụng hàm digitalWrite() chấp nhận làm đối số
ledPin và trạng thái CAO .
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH); }

Nếu trạng thái nút không phải là CAO , bạn tắt đèn LED. Chỉ cần đặt THẤP làm đối số
thứ hai trong hàm digitalWrite() .
else {
digitalWrite(ledPin, LOW); }

Tải lên mã
Trước khi nhấp vào nút tải lên, hãy đi tới Công cụ > Bảng và chọn bảng bạn đang sử
dụng. Trong trường hợp của tơi, đó là NodeMCU 1.0 (ESP-12 E Module) . Nếu bạn
không biết kiểu máy ESP8266 của mình, bạn có thể chọn “Mơ-đun ESP8266 chung”.
Vào Tools > Port và chọn cổng COM mà ESP8266 được kết nối. Sau đó, nhấn nút tải
lên và đợi thơng báo “ Tải lên xong ”.

trình diễn
Sau khi tải mã lên, hãy kiểm tra mạch của bạn. Đèn LED của bạn sẽ sáng lên khi bạn
nhấn nút:

/>
5/6



14:28 05/04/2023

Đầu vào kỹ thuật số và đầu ra kỹ thuật số ESP8266 NodeMCU (Arduino IDE)

Và tắt khi bạn phát hành nó:

kết thúc
Với hướng dẫn bắt đầu này, bạn đã học cách đọc đầu vào kỹ thuật số và điều khiển đầu
ra kỹ thuật số với ESP8266 bằng Arduino IDE.

/>
6/6



×