Nội Dung Bài Viết
Giới thiệu
Các input/out (GIPO) là một pin trên IC (Integrated Circuit). Nó có thể là chân Input hoặc chân output.
Kit NodeMcu cho phép truy cập vào các chân GIPOs của ESP8266. Điều đáng chú ý là các chân trên NodeMCU được đánh số khác với các chân GIPO trên ESP8266 như hình và bảng dưới đây. Ví dụ, chân D0 trên NodeMCU được nối với chân GIPO16.
Bảng dưới đây cung cấp chân IO trên Kit NodeMCU tương ứng với chân GPIO trên ESP8266
Chân trên NodeMCU | Chân GPIO trên ESP8266 |
---|---|
D0 | GPIO16 |
D1 | GPIO5 |
D2 | GPIO4 |
D3 | GPIO0 |
D4 | GPIO2 |
D5 | GPIO14 |
D6 | GPIO12 |
D7 | GPIO13 |
D8 | GPIO15 |
D9 / RX | GPIO3 |
D10 / TX | GPIO1 |
D11 / SD2 | GPIO9 |
D12 / SD3 | GPIO10 |
Những chân GPIO trong khung màu xanh (1, 3, 9, 10) hầu như không được sử dụng cho mục đích GPIO trên Kit NodeMCU.
ESP8266 có tất cả 16 GPIO, nhưng một vài chân GPIO được sử dụng như một bộ nhớ flash. vì vậy, chỉ khoảng 11 GPIO được dùng cho mục đích GPIO. Trong đó, chân GIPO 3 (RX) và chân GIPO 1 (TX) dùng để giao tiếp. Cuối cùng còn 9 chân dùng cho chức năng IO (D0-D8).
Chúng ta thấy trên kit NodeMCU các chân TX, RX, SD2, SD3 hầu như không dùng cho mục đích GPIO. Nhưng hai chân SD2 (D11), SD3 (D12) có thể dùng cho chức năng GPIO/PWM, Interrupt.
Chú ý D0/GPIO16 dùng để read/write, nhưng không hỗ trợ cho các chức năng đặc biệt.
Ví dụ
Lập trình cho led nhấp nháy sử dụng chân D4 trên Kit NodeMCU với Arduino IDE
Arduino Sketch for LED Blink
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | uint8_t LED_Pin = D4; // declare LED pin on NodeMCU Dev Kit void setup() { pinMode(LED_Pin, OUTPUT); // Initialize the LED pin as an output } void loop() { digitalWrite(LED_Pin, LOW);// Turn the LED on delay(1000); // Wait for a second digitalWrite(LED_Pin, HIGH);// Turn the LED off delay(1000); // Wait for a second } |
Download File
Source Code
Attached File
Bài viết các bạn có thể tham khảo: