Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Difference between revisions of "Rock3/CM3/e23/GPIO"

< Rock3‎ | CM3‎ | e23
Line 6: Line 6:
 
== <span id="gpio">General purpose input-output (GPIO) connector</span> ==
 
== <span id="gpio">General purpose input-output (GPIO) connector</span> ==
  
ROCK E23 has a 40-pin expansion header. Each pin is distinguished by color.
+
Radxa E23 has a 40-pin expansion header. Each pin is distinguished by color.
  
 
<div class="col-md-12 ">
 
<div class="col-md-12 ">
Line 326: Line 326:
 
=== GPIO number ===
 
=== GPIO number ===
  
Rockchip RK3568 GPIO has 5 banks, GPIO0 to GPIO4, each bank has 32pins, naming as below:
+
Rockchip RK3566 GPIO has 5 banks, GPIO0 to GPIO4, each bank has 32pins, naming as below:
  
 
  GPIO0_A0 ~ A7  
 
  GPIO0_A0 ~ A7  
Line 337: Line 337:
 
  GPIO1_D0 ~ D7
 
  GPIO1_D0 ~ D7
  
For Rockchip 4.19 kernel, the GPIO number can be calculated as below, take GPIO4_D1 (PIN26 on 4-0PIN HEADER) as an example:
+
For Rockchip 4.19 kernel, the GPIO number can be calculated as below, take GPIO4_A7 (PIN26 on 40-PIN HEADER) as an example:
  
  GPIO4_D1 = 4*32 + 3*8 + 1 = 153
+
  GPIO4_A7 = 4*32 + 0*8 + 7 = 135
 
  (A=0, B=1, C=2, D=3)
 
  (A=0, B=1, C=2, D=3)
  
To set GPIO4_D1 output
+
To set GPIO4_A7 output
  
 
  cd /sys/class/gpio
 
  cd /sys/class/gpio
  echo 153 > export
+
  echo 135 > export
  cd gpio153
+
  cd gpio135
 
  echo out > direction
 
  echo out > direction
 
  echo 1 > value    # output high
 
  echo 1 > value    # output high
 
  echo 0 > value    # output low
 
  echo 0 > value    # output low

Revision as of 06:34, 27 January 2022

    ROCK 3 >  ROCK 3 Compute Module >  Radxa E23 >  GPIO

General purpose input-output (GPIO) connector

Radxa E23 has a 40-pin expansion header. Each pin is distinguished by color.

Hardware V1.0

GPIO number Function4 Function3 Function2 Function1 Pin# Pin# Function1 Function2 Function3 Function4 GPIO number
+3.3V 1 2 +5.0V
32 I2C3_SDA_M0 UART3_RX_M0 GPIO1_A0 3 4 +5.0V
33 UART3_TX_M0 I2C3_SCL_M0 GPIO1_A1 5 6 GND
21 SPI0_MISO_M0 PWM6 GPIO0_C5 7 8 GPIO0_D1 UART2_TX_M0 25
GND 9 10 GPIO0_D0 UART2_RX_M0 24
97 SPI1_CS0_M1 GPIO3_A1 11 12 GPIO3_B4 I2C5_SDA_M0 108
20 UART0_RTSn PWM5 SPI0_CS1_M0 GPIO0_C4 13 14 GND
22 SPI0_CS0_M0 PWM7_IR GPIO0_C6 15 16 USB_OTG0_DM
NC 17 18 USB_OTG0_DP
138 I2C4_SDA_M0 I2S2_SDI_M1 SPI3_MOSI_M0 GPIO4_B2 19 20 GND
136 I2S1_SDO1_M1 SPI3_MISO_M0 GPIO4_B0 21 22 GPIO2_C6 UART8_RX_M0 SPI1_CS1_M0 86
139 I2S2_SDO_M1 I2C4_SCL_M0 SPI3_CLK_M0 GPIO4_B3 23 24 GPIO4_A6 SPI3_CS0_M0 I2S1_SCLK_RX_M1 134
GND 25 26 GPIO4_A7 SPI3_CS1_M0 I2S1_LRCK_RX_M1 135
14 PWM2_M1 I2C2_SDA_M0 SPI0_MOSI_M0 GPIO0_B6 27 28 GPIO0_B5 SPI0_CLK_M0 I2C2_SCL_M0 PWM1_M1 13
113 SPI1_MOSI_M1 I2S1_SDO2_M2 GPIO3_C1 29 30 GND
114 I2S1_SDO3_M2 SPI1_MISO_M1 UART5_TX_M1 GPIO3_C2 31 32 GPIO0_C3 PWM4 19
15 PWM0_M0 GPIO0_B7 33 34 GND
29 GPIO0_D5 35 36 GPIO0_B4 I2C1_SDA 12
30 GPIO0_D6 37 38 GPIO0_C1 PWM2_M0 UART0_TX 17
GND 39 40 GPIO0_B3 I2C1_SCL 11

More details about 40-pin Header In V1.0

  • Pins marked with color orange are designed for debug console.
  • PWM; x7;PWM0/PWM1/PWM2/PWM4/PWM5/PWM6/PWM7/
  • SPI:x3;SPI0/SPI1/SPI3/
  • I2C: x5;I2C1/I2C2/I2C3/I2C4/I2C5
  • UART: x5;UART0/UART2/UART3/UART5/UART8

GPIO number

Rockchip RK3566 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 GPIO4_A7 (PIN26 on 40-PIN HEADER) as an example:

GPIO4_A7 = 4*32 + 0*8 + 7 = 135
(A=0, B=1, C=2, D=3)

To set GPIO4_A7 output

cd /sys/class/gpio
echo 135 > export
cd gpio135
echo out > direction
echo 1 > value     # output high
echo 0 > value     # output low