|
|
(3 intermediate revisions by 2 users not shown) |
Line 1: |
Line 1: |
− | {{rock3_header}}
| + | #redirect [[rock3/CM/CM3I/E25/GPIO]] |
− | {{Languages|rock3/hardware/gpio}}
| + | |
− | | + | |
− | [[rock3 | ROCK 3]] > [[rock3/CM3 | ROCK 3 Compute Module]] > [[rock3/CM3/e25 | Radxa E25]] > [[rock3/CM3/e25/GPIO | GPIO]]
| + | |
− | | + | |
− | | + | |
− | | + | |
− | == <span id="gpio">General purpose input-output (GPIO) connector</span> ==
| + | |
− | | + | |
− | Radxa E25 has a 10-pin expansion header.
| + | |
− | | + | |
− | {| class="wikitable" style="vertical-align:middle;"
| + | |
− | |- style="font-weight:bold; text-align:center;"
| + | |
− | !Pin#
| + | |
− | ! Function1
| + | |
− | ! Function2
| + | |
− | ! Function3
| + | |
− | ! Function4
| + | |
− | ! Gpionumber
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 1
| + | |
− | | GPIO0_B4
| + | |
− | | CAN0_RX_M0
| + | |
− | | I2C1_SDA
| + | |
− | |
| + | |
− | | 12
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 2
| + | |
− | | GPIO3_C2
| + | |
− | | SPI1_MISO_M1
| + | |
− | | UART5_TX_M1
| + | |
− | | I2S1_SDO3_M2
| + | |
− | |114
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 3
| + | |
− | | GPIO3_C3
| + | |
− | | SPI1_CLK_M1
| + | |
− | | UART5_RX_M1
| + | |
− | | I2S1_SCLK_RX_M2
| + | |
− | | 115
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 4
| + | |
− | | GPIO3_C0
| + | |
− | | PWM13_M0
| + | |
− | | UART3_RX_M1
| + | |
− | |
| + | |
− | |112
| + | |
− | |-
| + | |
− | | style="background-color:#000; color:#FFF" | 5
| + | |
− | | GND
| + | |
− | |
| + | |
− | |
| + | |
− | |
| + | |
− | |
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 6
| + | |
− | | GPIO1_A1
| + | |
− | | CAN1_TX_M0
| + | |
− | | UART3_TX_M0
| + | |
− | | I2C3_SCL_M0
| + | |
− | | 33
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 7
| + | |
− | | GPIO1_A0
| + | |
− | | CAN1_RX_M0
| + | |
− | | UART3_RX_M0
| + | |
− | | I2C3_SDA_M0
| + | |
− | | 32
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 8
| + | |
− | | GPIO3_A1
| + | |
− | | SPI1_CS0_M1
| + | |
− | |
| + | |
− | |
| + | |
− | | 97
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 9
| + | |
− | | GPIO3_C1
| + | |
− | | I2S1_SDO2_M2
| + | |
− | | SPI1_MOSI_M1
| + | |
− | |
| + | |
− | | 113
| + | |
− | |-
| + | |
− | | style="background-color:#008000; color:#FFF;" | 10
| + | |
− | | GPIO0_B3
| + | |
− | | CAN0_TX_M0
| + | |
− | | I2C1_SCL
| + | |
− | |
| + | |
− | | 11
| + | |
− | |-
| + | |
− | | + | |
− | | + | |
− | |}
| + | |
− | | + | |
− | ==== More details about 10-pin Header In V1.3 ====
| + | |
− | * PWM;x1; PWM13
| + | |
− | * SPI: x1; PSI1
| + | |
− | * I2C: x2;I2C1/I2C3/
| + | |
− | * UART: x2;UART3/UART5
| + | |
− | * CAN: x1;CAN0
| + | |
− | | + | |
− | === GPIO number ===
| + | |
− | | + | |
− | Rockchip RK3568 GPIO has 5 banks, GPIO0 to GPIO4, each bank has 32pins, naming as below:
| + | |
− | | + | |
− | GPIO0_A0 ~ A7
| + | |
− | GPIO0_B0 ~ B7
| + | |
− | GPIO0_C0 ~ C7
| + | |
− | GPIO0_D0 ~ D7
| + | |
− |
| + | |
− | GPIO1_A0 ~ A7
| + | |
− | ....
| + | |
− | GPIO1_D0 ~ D7
| + | |
− | | + | |
− | For Rockchip 4.19 kernel, the GPIO number can be calculated as below, take GPIO3_C2 (PIN2 on 10-PIN HEADER) as an example:
| + | |
− | | + | |
− | GPIO3_C2 = 3*32 + 2*8 + 2 = 114
| + | |
− | (A=0, B=1, C=2, D=3)
| + | |
− | | + | |
− | To set GPIO3_C2 output
| + | |
− | | + | |
− | cd /sys/class/gpio
| + | |
− | echo 114> export
| + | |
− | cd gpio114
| + | |
− | echo out > direction
| + | |
− | echo 1 > value # output high
| + | |
− | echo 0 > value # output low
| + | |