Trong bài viết này, chúng ta sẽ tìm hiểu về sơ đồ chân của ESP32. Bo Dev ESP32 30 chân sẽ được sử dụng để biểu diễn sơ đồ chân của ESP32. Chúng ta cũng sẽ tìm hiểu về một số thiết bị ngoại vi quan trọng của vi điều khiển ESP32 và các chân liên kết của nó, những chân GPIO nào có thể được sử dụng trong dự án của bạn.
Bo mạch dựa trên ESP32 có nhiều hình dạng và kích thước khác nhau và sơ đồ chân của mỗi bo là khác nhau. Ngoài ra, không phải tất cả các chân của vi điều khiển ESP32 đều có sẵn trên bo dev vì một số chân có thể được gắn vĩnh viễn với một chức năng chuyên dụng.
Một trong những trường hợp như vậy là bộ nhớ Flash. Tất cả các bo mạch ESP32 đều đi kèm với 4 MB bộ nhớ Flash để lưu trữ các chương trình. Vì vậy, một số chân GPIO (cụ thể là 6) được kết nối với IC Flash SPI và các chân đó không thể được sử dụng như các chân GPIO thông thường.
Do đó cần phải hiểu sơ đồ chân của các bo mạch ESP32 phổ biến để bạn biết được những chân nào có thể sử dụng trong các dự án.
IC vi điều khiển ESP32 có gói QFN 48 chân. Vì đây là gói QFN (Quad Flat No Leads), rất khó để hàn IC vào PCB, nếu bạn quan tâm đến việc tự mình tạo ra một bo mạch ESP32.
Vì vậy, những gì Espressif Systems đã làm là họ lấy IC ESP32 và tạo ra một bo module nhỏ với các cạnh đúc. Một phiên bản phổ biến là ESP-WROOM-32.
Ngoài IC ESP32, ESP-WROOM-32 còn chứa IC Flash SPI 4 MB, bộ dao động tinh thể 40 MHz, ăng-ten PCB và một số linh kiện thụ động rời rạc để tạo nên một hệ thống hoạt động.
Bạn có thể sử dụng bo này trong thiết kế phần cứng (vì nó xử lý phần RF phức tạp của PCB) và tạo bo dev hoặc bo breakout hoặc thậm chí là một sản phẩm thương mại.
Các nhà sản xuất module bên thứ ba sử dụng module ESP-WROOM-32, thiết kế một bo breakout dựa trên module này với các chân thân thiện với người dùng, cổng USB, công tắc reset và boot, …
Chúng ta hãy bắt đầu khám phá sơ đồ chân ESP32 bằng cách xem sơ đồ chân của ESP WROOM 32. Hình bên dưới là sơ đồ chân của module ESP-WROOM-32 điển hình. Nó bao gồm 38 chân (14 chân trên mỗi cạnh dài và 10 chân trên cạnh ngắn dưới cùng).
Cạnh ngắn còn lại được để lại cho ăng ten PCB. Nếu bạn chú ý hình của ESP-WROOM-32 trước đó, thì bộ vi điều khiển và các linh kiện khác sẽ không thấy khi đặt dưới RF Shield.
Bạn có thể sử dụng sơ đồ chân của module ESP-WROOM-32 này làm tài liệu tham khảo nếu bạn đang sử dụng nó trong thiết kế phần cứng.
Bo dev ESP32 phổ biến hiện nay là phiên bản 30 chân ở hình trên. Nó bao gồm ESP-WROOM-32 làm bo mạch chủ và bổ sung một số chân và linh kiện để dễ dàng tương tác với ESP32.
Hình dưới là sơ đồ chân của bo 30 chân ESP32 DevKit.
Như bạn có thể thấy từ hình, mỗi chân có nhiều hơn một chức năng khả thi và khi sử dụng một chân cho tác vụ cụ thể, hãy kiểm tra kỹ các chức năng thay thế của nó.
Một phiên bản khác của bo ESP32 DevKit có 36 chân. Phiên bản này không phổ biến bằng phiên bản 30 chân. Nhưng nếu bạn tình cờ có bo mạch ESP32 36 chân, sơ đồ chân sau sẽ rất hữu ích.
Lưu ý rằng sơ đồ chân của cả phiên bản 30 chân và 36 chân của bo dev ESP32 rất giống nhau ngoại trừ một số chân ở phía dưới. Trong phiên bản 36 chân, 6 chân GPIO (GPIO6 đến GPIO11) được sử dụng cho SPI Flash IC. Vì vậy, không nên sử dụng chúng cho các mục đích khác. Bạn chỉ cần lấy thêm một chân (GPIO0 - Chân 23).
Chúng ta đã tìm hiểu một chút về sơ đồ chân ESP32. Bây giờ chúng ta hãy tập trung vào một số thiết bị ngoại vi quan trọng của ESP32 và các chân liên kết của chúng. Vi điều khiển ESP32 có:
34 GPIO có thể lập trình
18 kênh ADC 12 bit
2 kênh DAC 8-bit
16 kênh PWM
3 giao diện UART
3 giao diện SPI
2 Giao diện I2C
2 Giao diện I2S
10 GPIO cảm ứng điện dung
16 GPIO RTC
Thiết bị ngoại vi được sử dụng phổ biến nhất là GPIO. ESP32 có 34 chân GPIO với mỗi chân thực hiện nhiều hơn một chức năng (chỉ một chân hoạt động). Bạn có thể cấu hình chân dưới dạng GPIO hoặc ADC hoặc UART trong chương trình.
Các chân ADC và DAC được xác định trước và bạn phải sử dụng các chân do nhà sản xuất chỉ định. Nhưng các chức năng khác như PWM, SPI, UART, I2C, ... có thể được gán cho bất kỳ chân GPIO nào thông qua chương trình.
ESP32 có 16 GPIO RTC, là một phần của hệ thống con RTC Low-Power. Các chân này có thể được sử dụng để đánh thức ESP32 khỏi chế độ ngủ sâu làm nguồn đánh thức bên ngoài.
ESP32 có hai module chuyển đổi analog sang kỹ thuật số SAR 12 bit với 8 kênh và 10 kênh mỗi module. Vì vậy, khối ADC1 và ADC2 kết hợp với nhau có 18 kênh ADC 12-bit.
Với độ phân giải 12-bit, các giá trị kỹ thuật số đầu ra sẽ nằm trong khoảng 0 - 4093.
Bộ vi điều khiển ESP32 có hai kênh chuyển đổi kỹ thuật số sang analog 8 bit độc lập để chuyển đổi các giá trị kỹ thuật số sang tín hiệu điện áp analog. DAC có mạng điện trở bên trong và sử dụng nguồn điện làm điện áp tham chiếu đầu vào.
Hai chân GPIO sau được liên kết với các chức năng của DAC.
DAC1 - GPIO25
DAC2 - GPIO26
SoC ESP32 có 10 GPIO cảm ứng điện dung, có thể phát hiện các biến thể về điện dung trên chân cắm do chạm hoặc tiếp cận chân GPIO bằng ngón tay hoặc bút stylus. Các GPIO cảm ứng này có thể được sử dụng để triển khai các miếng cảm ứng điện dung mà không cần bất kỳ phần cứng bổ sung nào.
Chip Wi-Fi ESP32 có ba khối SPI (SPI, HSPI và VSPI) ở cả chế độ master và chế độ slave. SPI được sử dụng để giao tiếp với bộ nhớ Flash. Vì vậy, bạn có hai giao diện SPI.
Có hai giao diện I2C trong ESP32 với sự linh hoạt hoàn toàn trong việc gán các chân, tức là, người dùng có thể gán các chân SCL và SDA cho cả hai giao diện I2C trong chương trình.
Nếu bạn đang sử dụng Arduino IDE, thì các chân I2C mặc định là:
SDA - GPIO21
SCL - GPIO22
Bộ điều khiển PWM trong ESP32 có 16 kênh dạng sóng PWM độc lập với tần số và chu kỳ nhiệm vụ có thể định cấu hình. Dạng sóng PWM có thể được sử dụng để điều khiển động cơ và LED. Bạn có thể cấu hình tần số tín hiệu PWM, kênh, chân GPIO và cả chu kỳ nhiệm vụ.
Bây giờ chúng ta hãy xem một bảng chỉ định các chân GPIO và khả năng đầu vào hoặc đầu ra của chúng.
Chân GPIO |
Chân trên ESP32 |
Thông tin |
0 |
- |
Kéo CAO. Đã kết nối với nút BOOT |
1 |
TX0 |
Không được sử dụng khi Txing |
2 |
YES |
Kép THẤP |
3 |
RX0 |
Không được sử dụng khi Rxing |
4 |
D4 |
Kéo THẤP |
5 |
D5 |
Kéo CAO |
6 |
- |
Nối với SPI flash IC |
7 |
- |
Nối với SPI flash IC |
8 |
- |
Nối với SPI flash IC |
9 |
- |
Nối với SPI flash IC |
10 |
- |
Nối với SPI flash IC |
11 |
- |
Nối với SPI flash IC |
12 |
D12 |
Kéo THẤP. Boot không thành công nếu kéo CAO vì nó đặt điện áp của bộ ổn áp bên trong. |
13 |
D13 |
|
14 |
D14 |
|
15 |
D15 |
Kéo CAO |
16 |
RX2 |
UART2 RX |
17 |
TX2 |
UART2 TX |
18 |
D18 |
|
19 |
D19 |
|
21 |
D21 |
I2C SDA |
22 |
D22 |
I2C SCL |
23 |
D23 |
|
25 |
D25 |
|
26 |
D26 |
|
27 |
D27 |
|
32 |
D32 |
|
33 |
D33 |
|
34 |
D34 |
Chỉ đầu vào kỹ thuật số. Không có đầu ra kỹ thuật số. |
35 |
D35 |
Chỉ đầu vào kỹ thuật số. Không có đầu ra kỹ thuật số. |
36 |
YES |
Chỉ đầu vào kỹ thuật số. Không có đầu ra kỹ thuật số. |
39 |
YES |
Chỉ đầu vào kỹ thuật số. Không có đầu ra kỹ thuật số. |
Nếu bạn nhìn vào sơ đồ chân của module ESP-WROOM-32, thì bạn sẽ thấy rằng GPIO6 đến GPIO11 được kết nối với IC bộ nhớ Flash SPI. Ngay cả khi các chân GPIO này có thể truy cập được (không có trong bo mạch ESP32 30 chân), không sử dụng chúng cho bất kỳ mục đích nào khác.
Có 4 chân GPIO có khả năng hoạt động như chân chỉ đầu vào kỹ thuật số. Đó là GPIO34, GPIO35, GPIO36 và GPIO39.
Tất cả các chân GPIO đều có khả năng ngắt.
SoC ESP32 có 5 chân đboot strapping. Chúng là:
GPIO0 (CAO khi BOOT)
GPIO2 (THẤP khi BOOT)
GPIO5 (CAO trong khi BOOT)
GPIO12 (THẤP khi BOOT)
GPIO15 (CAO khi BOOT)
Các chân này được sử dụng để đưa bộ vi điều khiển vào chế độ flashing hoặc chế độ bootloader.
Hotline: 0979 466 469