π ΠΡΠ°ΡΠΊΠΎ
General-Purpose Input/Output GPIO β ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ², FPGA ΠΈΠ»ΠΈ SoC, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΊΠ°ΠΊ Π²Ρ ΠΎΠ΄Ρ ΠΈΠ»ΠΈ Π²ΡΡ ΠΎΠ΄Ρ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΠ΅ΠΏΡΠΌΠΈ.
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
ΠΠ°ΠΆΠ΄ΡΠΉ GPIO ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Π»ΠΈΠ½ΠΈΡ.
Π ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²Π²ΠΎΠ΄Π° ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Ρ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
Π ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²ΡΠ²ΠΎΠ΄Π° ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΎΠΊΠΈΠΉ ΠΈΠ»ΠΈ Π½ΠΈΠ·ΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π½Π° ΠΏΠΈΠ½Π΅.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ:
- Pull-up / Pull-down ΡΠ΅Π·ΠΈΡΡΠΎΡΡ
- ΠΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΡΠΎΠ½ΡΡ / ΡΠΏΠ°Π΄Ρ / ΡΡΠΎΠ²Π½Ρ
- ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (UART, SPI, PWM ΠΈ Π΄Ρ.)
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΅Π³ΠΈΡΡΡΡ:
- ΡΠ΅ΠΆΠΈΠΌ (input/output)
- ΡΡΠΎΠ²Π΅Π½Ρ (high/low)
- Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
- ΡΡΠ½ΠΊΡΠΈΡ/Π°Π»ΡΡ. ΡΡΠ½ΠΊΡΠΈΡ
βοΈ ΠΠ΄Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ
Π£ΡΡΡΠΎΠΉΡΡΠ²ΠΎ | ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
---|---|
Microcontrollers | Π‘Π²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄Ρ, ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π΄Π°ΡΡΠΈΠΊΠΈ, ΡΠ΅Π»Π΅ |
FPGA | ΠΠ±ΠΌΠ΅Π½ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΠΈΠ½Π°ΠΌΠΈ ΠΈ ΡΡ Π΅ΠΌΠ°ΠΌΠΈ |
Embedded | GPIO = ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ |
Industrial Control | ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²: ΡΡΠ΅Π²ΠΎΠ³ΠΈ, Π΄Π°ΡΡΠΈΠΊΠΈ |
SoC | ΠΠ±ΡΠ°Ρ ΡΠΈΠ½Π° ΡΠ²ΡΠ·ΠΈ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΌΠΈΡΠΎΠΌ |
π» ΠΡΠΈΠΌΠ΅Ρ (STM32 HAL)
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET); // ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); // ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
π Π‘Ρ Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
+----------+
| GPIO |ββββββ[ΠΠ½ΠΎΠΏΠΊΠ° / Π‘ΠΈΠ³Π½Π°Π»]
| Register |
+----------+
β
[MCU / FPGA]
β ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°
-
ΠΡΠΎΡΡΠΎΡΠ°: ΠΎΠ΄ΠΈΠ½ Π±ΠΈΡ Π½Π° Π»ΠΈΠ½ΠΈΡ, Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΡΡΡ
-
ΠΠΈΠ±ΠΊΠΎΡΡΡ: Π²Ρ ΠΎΠ΄/Π²ΡΡ ΠΎΠ΄, ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ, Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
-
ΠΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π² Embedded-ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
β ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ
-
ΠΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ)
-
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΎΠΊΡ ΠΈ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
-
ΠΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΏΡΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ