Sơ đồ chân ESP8266

Bài viết này sẽ giới thiệu tới các bạn các chân GPIO của ESP8266: Sơ đồ chân, chức năng của chúng và cách sử dụng.

Chip ESP8266 12-E có tổng cộng 17 chân GPIO. Không phải tất cả các chân này được để lộ ra trên các bo phát triển của ESP8266. Một số chân không khuyến khích được sử dụng. Một số khác được sử dụng với một chức năng riêng.

Trong bài này, bạn sẽ được học làm thế nào để có thể sử dụng chính xác các chân GPIO của ESP8266 và tất nhiên giúp bạn có thể hạn chế việc làm hỏng con chip của bạn.

Sơ đồ chân chip ESP8266 12-E

Hình sau miêu tả sơ đồ chân của ESP8266 12-E. Sử dụng sơ đồ này nếu bạn đang sử dụng nó trong các dự án của bạn.

Thời điểm hiện tại, có rất nhiều bo phát triển khác nhau cho chip ESP8266 với sự khác nhau về số lượng chân GPIO,  kích thước v.v.. trên bo đó.

Các bo được sử dụng rộng rãi hiện nay đó là ESP-01, ESP8266-12E NodeMCU Kit và Wemos D1 Mini.

Sơ đồ chân ESP8266-01

Sơ đồ chân ESP8266-12E NodeMCU Kit

Sơ đồ chân Wemos D1 Mini

Thiết bị ngoại vi của ESP8266

Thiết bị ngoại vi của ESP8266 bao gồm:

  • 17 GPIOs
  • SPI
  • I2C (implemented on software)
  • I2S interfaces with DMA
  • UART
  • 10-bit ADC

Những chân hay được sử dụng của ESP8266

Một điều quan trọng cần được chú ý về ESP8266 là số GPIO không trùng với các nhãn được in trên các bo phát triển. Ví dụ, D0 tương ứng với GPIO16 và D1 tương ứng với GPIO5.

Bảng sau miêu tả sự tương ứng giữa các nhãn và số GPIO cũng như chân nào hay được sử dụng trong các dự án của bạn, và chân nào cần được lưu ý khi sử dụng.

Các chân được in bằng màu xanh thì OK để dùng. Các chân được in màu vàng thì OK để dùng, tuy nhiên bạn cần lưu ý bởi vì chúng có thể có những hành vi không mong muốn khi khởi động. Các chân được in màu đỏ không được khuyến khích để dùng như input và output.

Chúng ta hãy tiếp tục theo dõi chi tiết và phân tích sâu hơn về các chân GPIO của ESP866 và các chức năng của nó

GPIO kết nối với Flash Chip

GPIO6 tới GPIO11 thường được sử dụng để kết nối với flash chip trong các bo ESP8266. Vì vậy, những chân này không được khuyến khích sử dụng cho các mục đích khác.

Các chân được sử dụng trong suốt quá trình Boot (Khởi động)

Có thể ngăn cản quá trình Boot xẩy ra trên ESP8266 nếu một trong các chân sau được thiết lập ở mức LOW hoặc HIGH. Danh sách sau miêu tả trạng thái các chân trong quá trình BOOT.

  • GPIO16: chân ở mức high trong quá trình BOOT
  • GPIO0: Boot lỗi nếu chân ở mức LOW
  • GPIO2: chân ở mức high trong quá trình BOOT, boot lỗi nếu chân ở mức LOW
  • GPIO15: boot lỗi nếu chân ở mức HIGH
  • GPIO3: chân ở mức high trong quá trình BOOT
  • GPIO1: chân ở mức high trong quá trình BOOT, boot lỗi nếu chân ở mức LOW
  • GPIO10: chân ở mức high trong quá trình BOOT
  • GPIO9: chân ở mức high trong quá trình BOOT

Các chân ở mức HIGH trong quá trình BOOT

Một số chân có thể phát một tín hiệu 3.3V, khi ESP8266 khởi động. Điều này có thể gây ra những vấn đề rắc rồi nếu bạn kết nối các relay hoặc các thiết bị ngoại vi khác kết nối tới những chân GPIO này. Những chân GPIO phát ra tín hiệu 3.3V trong quá trình boot:

  • GPIO16
  • GPIO3
  • GPIO1
  • GPIO10
  • GPIO9

Ngoài ra, các chân GPIO khác, ngoại trừ GPIO5 và GPIO4, có thể phát ra tín hiệu điện áp thấp trong qua trình boot. Điều này có thể gây ra những vấn đề rắc rối nếu những chân này kết nối tới các transistor hoặc relay.

Analog Input

ESP8266 chỉ hỗ trợ đọc tín hiệu analog trên một chân GPIO. Chân GPIO này được gọi là ADC0 và nó thường được gắn nhãn là A0.

Điện áp đầu vào lớn nhất của chân ADC0 từ 0 tới 1V nếu bạn đang sử dụng chip ESP8266 để trần (Chip chưa gắn các linh kiện bổ trợ). Nếu bạn đang sử dụng một bo phát triển như như ESP8266 12-E NodeMCU, điện áp đầu vào sẽ vào khoảng từ 0 tới 3.3V bởi vì những bo này đã chứa một bộ phân chia điện áp bên trong cho chip.

LED tích hợp trên bo

Hầu hết các bo phát triển của ESP8266 có một LED đã được tích hợp sẵn. LED này thường được kết nối tới chân GPIO2.

LED được kết nối tới một điện trở pull-down, vì vậy khi bạn gửi một tín hiệu mức HIGH, LED sẽ tắt.

Chân RST

Khi chân RST được thiết lập ở trạng thái LOW, ESP8266 sẽ reset. Điều này tương đượng với việc bạn ấn nút RESET được tích hợp trên các bo phát triển.

GPIO0

Khi chân GPIO0 được thiết lập ở trạng thái LOW, nó sẽ kích hoạt chế độ bootloader cho ESP8266. Điều này tương đương với việc bạn ấn nút FLASH/BOOT được tích hợp trên các bo phát triển.

GPIO16

GPIO16 có thể được sử dụng để đánh thức ESP8266 khi nó đang ở trạng thái deep sleep (ngủ sâu). Để đánh thức ESP8266 từ chế độ deep sleep, GPIO16 nên kết nối tới chân RST.

I2C

ESP8266 không hỗ trợ về mặt phần cứng cho giao thức I2C, tuy nhiên chúng ta có thể lập trình cho nó bằng phần mềm. Vì vậy bạn có thể sử dụng bất cứ chân GPIO nào cho I2C. Thông thường các chân sau được sử dụng như là các chân I2C:

  • GPIO5: SCL
  • GPIO4: SDA

SPI

Những chân được sử dụng như là các chân SPI:

  • GPIO12: MISO
  • GPIO13: MOSI
  • GPIO14: SCLK
  • GPIO15: CS

Các chân PWM

ESP8266 cho phép lập trình PWM bằng phần mềm trên tất cả các chân I/O: GPIO0 tới GPIO16. Các tín hiệu PWM trên ESP8266 có độ phân giải 10 bit.

Các chân Interrupt (Ngắt)

ESP8266 hỗ trợ các chế độ interrupt trên bất cứ chân GPIO nào, trừ chân GPIO16.

Xem video review phần cứng ESP8266 tại đây

Bản quyền bài viết thuộc về NhaThongMinhPlus.com

Leave a Reply

Your email address will not be published. Required fields are marked *