Có năm loại/cấu hình chính của GPIO:
✅ Kéo lên (Pull-up) – Trong cấu hình này, chân GPIO được kết nối với VCC bằng điện trở kéo lên, thường là 10K. Khi không sử dụng, Pin GPIO sẽ đọc điện áp bằng VCC
✅ Kéo xuống (Pull-down) – Chân GPIO được kết nối với GND bằng điện trở kéo xuống, thường là 10K. Khi không sử dụng, GPIO sẽ đọc điện áp bằng tham chiếu GND.
✅ Đẩy-kéo (Push-Pull) – Trong loại này, hai MOSFET bổ sung, PMOS và NMOS, được kết nối theo cấu hình đẩy – kéo. Một tín hiệu từ bên trong IC sẽ BẬT hoặc TẮT MOSFET. Nếu tín hiệu này ở mức CAO, NMOS được kích hoạt và tải được kéo về GND (nguồn thu – sink). Nếu tín hiệu này THẤP, PMOS được kích hoạt và tải được đẩy tới VCC (nguồn cấp – source). Cấu hình này có thể điều khiển hai mức đầu ra.
✅ Open-drain (open-collector) – Tại đây, transistor cực E chung (đối với BJT) hoặc cực S – Source(đối với MOSFET) được kết nối với GND. Cực C collector hoặc cống Drain được đưa ra dưới dạng GPIO. Nếu mức CAO được đưa ra ở cực B (BJT) / cực Gate (MOSFET) thì cực C/ Drain bị nối xuống GND và chân GPIO ở mức THẤP.
✅ Thả nổi (Floating) – GPIO thả nổi có nghĩa là không xác định được trạng thái của chân. Nó không ở mức CAO hay THẤP và có thể được kéo lên CAO hoặc THẤP bởi các nguồn bên ngoài. Không nên để các chân ở trạng thái thả nổi vì chúng gây ra EMI và trong một số trường hợp là nhiễu.