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

Difference between revisions of "Rockpi4/hardware/gpio"

< Rockpi4‎ | hardwareRedirect page
(GPIO number: try to simplify calculation)
(Redirected page to Rock4/hardware/gpio)
 
(16 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{rockpi4_header}}
+
#redirect [[Rock4/hardware/gpio]]
{{Languages|rockpi4/hardware/gpio}}
+
 
+
    [[rockpi4 | ROCK Pi 4]] > [[rockpi4/hardware | Hardware]] > [[rockpi4/hardware/gpio | GPIO]]
+
 
+
 
+
=== <span id="gpio">General purpose input-output (GPIO) connector</span> ===
+
 
+
ROCK Pi 4 has a 40-pin expansion header. Each pin is distinguished by color.
+
 
+
{| class="wikitable"
+
! GPIO number || Function2 || Function1 ||  GPIO ||  Pin# || || Pin# || GPIO || Function1 || Function2 || GPIO number
+
|-
+
| || || +3.3V ||  || style="background:yellow"| 1 ||  ||style="background:red"| 2 ||  || +5.0V ||  ||
+
|-
+
| 71 || || I2C7_SDA || GPIO2_A7 || style="background:green; color:white"| 3 || ||  style="background:red"| 4 || || +5.0V ||  ||
+
|-
+
| 72 || || I2C7_SCL || GPIO2_B0 || style="background:green; color:white"| 5 || || style="background:black; color:white"| 6 ||  || GND ||  ||
+
|-
+
| 75 || || SPI2_CLK || GPIO2_B3 || style="background:green; color:white"| 7 || || style="background:green; color:white"| 8 || GPIO4_C4 || style="background:orange"|DEBUG_TXD ||  || 148
+
|-
+
| || ||  GND ||  || style="background:black; color:white"| 9 || || style="background:green; color:white"|10 || GPIO4_C3 || style="background:orange"|DEBUG_RXD ||  || 147
+
|-
+
|146  || ||  PWM0 || GPIO4_C2 || style="background:green; color:white"|11 || || style="background:green; color:white"|12 || GPIO4_A3 || I2S1_SCLK ||  || 131
+
|-
+
| 150 || || PWM1 || GPIO4_C6 || style="background:green; color:white"|13 ||  || style="background:black; color:white"|14 || || GND ||  ||
+
|-
+
| 149 || || SPDIF_TX ||  GPIO4_C5 || style="background:green; color:white"|15 || || style="background:green; color:white"|16 || GPIO4_D2 || ||  || 154
+
|-
+
| || ||  +3.3V || || style="background:yellow"|17 || || style="background:green; color:white"|18 || GPIO4_D4 || ||  || 156
+
|-
+
|40 || UART4_TXD ||  SPI1_TXD || GPIO1_B0 || style="background:green; color:white"|19 ||  ||style="background:black; color:white"|20 || || GND ||  ||
+
|-
+
|15 || UART4_RXD || SPI1_RXD || GPIO1_A7  || style="background:green; color:white"|21  ||  || style="background:green; color:white"|22  || GPIO4_D5  ||  || || 157
+
|-
+
|41 || ||  SPI1_CLK || GPIO1_B1 || style="background:green; color:white"|23 ||  || style="background:green; color:white"|24 || GPIO1_B2  || SPI1_CSn  ||  || 42
+
|-
+
| || ||  GND  ||  || style="background:black; color:white"|25  ||  || style="background:green; color:white"|26 ||  || ADC_IN0 ||  ||
+
|-
+
| 64 || ||  I2C2_SDA  || GPIO2_A0 || style="background:blue; color:white"|27  ||  || style="background:blue; color:white"|28 || GPIO2_A1 || I2C2_CLK ||  || 65
+
|-
+
| 74 || I2C6_SCL ||  SPI2_TXD  || GPIO2_B2 || style="background:green; color:white"|29  ||  || style="background:black; color:white"|30 ||  || GND ||  ||
+
|-
+
| 73 || I2C6_SDA ||  SPI2_RXD  || GPIO2_B1 || style="background:green; color:white"|31  ||  || style="background:green; color:white"|32 || GPIO3_C0 || SPDIF_TX || UART3_CTSn || 112
+
|-
+
| 76 || ||  SPI2_CSn || GPIO2_B4 || style="background:green; color:white"|33  ||  || style="background:black; color:white"|34 ||  || GND ||  ||
+
|-
+
| 133 || ||  I2S1_LRCK_TX || GPIO4_A5 || style="background:green; color:white"|35  ||  || style="background:green; color:white"|36 || GPIO4_A4 || I2S1_LRCK_RX ||  || 132
+
|-
+
| 158 || ||  || GPIO4_D6 || style="background:green; color:white"|37  ||  || style="background:green; color:white"|38 || GPIO4_A6 || I2S1_SDI ||  || 134
+
|-
+
| || ||  GND ||  || style="background:black; color:white"|39  ||  ||style="background:green; color:white"|40  || GPIO4_A7 || I2S1_SDO ||  || 135
+
|}
+
 
+
=== IO Voltage ===
+
RK3399 have three IO voltages, 1.8V/3.0V/3.3V. For ROCK Pi 4, below is the default voltage:
+
 
+
<pre>
+
| GPIO      | Voltage Level | Tolerance |
+
| ---------- | ------------- | --------- |
+
| GPIO3_C0  | 3.3V          | 3.465V    |
+
| ADC_IN0    | 1.8V          | 1.98V    |
+
| Other GPIO | 3.0V          | 3.14V    |
+
 
+
 
+
</pre>
+
 
+
 
+
=== GPIO number ===
+
Rockchip RK3399 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.4 kernel, the GPIO number can be calculated as below, take GPIO4_D5 (PIN22 on 40PIN GPIO) as an example:
+
 
+
    GPIO4_D5 = 4*32 + 3*8 + 5 = 157
+
    (A=0, B=1, C=2, D=3)
+
 
+
To set GPIO4_D5 output
+
 
+
    cd /sys/class/gpio
+
    echo 157 > export
+
    cd gpio157
+
    echo out > direction
+
    echo 1 > value    # output high
+
    echo 0 > value    # output low
+
 
+
=== GPIO Libraries/API ===
+
====Install [[Rockpi4/dev/libmraa | Libmraa]] ====
+

Latest revision as of 13:16, 26 August 2022