Purple Pi OH(Debian/Ubuntu)使用python控制gpio

本文分享的是Purple Pi OH开源主板搭载Debian/Ubuntu系统如何使用python控制gpio。

Purple Pi OH作为一款兼容树莓派的开源主板,采用瑞芯微RK3566 (Cortex-A55) 四核64位超强CPU,主频最高达1.8 GHz,算力高达1Tops,支持INT8/INT16,支持TensorFlow/MXNet/PyTorch/Caffe框架,多路视频输出和输入,支持4K、H.265/H.264视频解码,接口丰富。

玩法丰富,支持OpenHarmony、Ubuntu、Debian、Android等多种系统,提供丰富开源资料。

产品规格书查看深圳触觉智能官网-产品中心

Purple Pi OH(Debian/Ubuntu)使用python控制gpio_第1张图片

Purple Pi OH(Debian/Ubuntu)使用python控制gpio_第2张图片

安装python gpio库

apt-get update
apt -y install python3-libgpiod

GPIO输出

import time
import gpiod

//B7=15
LINE_OFFSET =15

chip0 = gpiod.Chip("0", gpiod.Chip.OPEN_BY_NUMBER)

gpio0_b0 = chip0.get_line(LINE_OFFSET)
gpio0_b0.request(consumer="gpio", type=gpiod.LINE_REQ_DIR_OUT, default_vals=[0])

print(gpio0_b0.consumer())

try:
    while True:
        gpio0_b0.set_value(1)
        time.sleep(0.5)
        gpio0_b0.set_value(0)
        time.sleep(0.5)
finally:
    gpio0_b0.set_value(1)
    gpio0_b0.release()

我们通过万用表检测该引脚的电压是否会在高低电压中进行反复横跳

GPIO15对应的位置在11

GPIO输入

import time
import gpiod

LINE_OFFSET =23

chip0 = gpiod.Chip("0",gpiod.Chip.OPEN_BY_NUMBER)
gpio0_b7 = chip0.get_line(LINE_OFFSET)
gpio0_b7.request(consumer="gpio", type=gpiod.LINE_REQ_DIR_IN, default_vals=[0])

try:
    while True:
        value = gpio0_b7.get_value()
        time.sleep(0.5)
        print("gpio status: ",value)
finally:
    gpio0_b7.release()
    chip.close

给此GPIO也就是23脚连接3.3V的电平,终端输出1;将此GPIO连接到GND,终端输出0。

双排针Pin功能定义

序号

定义

电平

说明

1

VDD_3V3

3.3V

供电输出3.3V

2

VDD_5V

5V

可做5V输入供电,也可输出5V

3

I2C_SDA

3.3V

I2C数据信号

4

VDD_5V

5V

可做5V输入供电,也可输出5V

5

I2C_SCL

3.3V

I2C时钟信号

6

GND

GND

电源地

7

GPIO_7

3.3V

gpio编号为23

8

UART_TXD

3.3V

/dev/ttyS0 发送

9

GND

GND

电源地

10

UART_RXD

3.3V

/dev/ttyS0 接收

11

GPIO_0

3.3V

gpio编号为15

12

GPIO_1

3.3V

gpio编号为22

13

GPIO_2

3.3V

gpio编号为20

14

GND

GND

电源地

15

GPIO_3

3.3V

gpio编号为21

16

GPIO_4

3.3V

gpio编号为124

17

VDD_3V3

3.3V

供电输出3.3V

18

GPIO_5

3.3V

gpio编号为125

19

SPI_MOSI

3.3V

SPI数据信号

20

GND

GND

电源地

21

SPI_MISO

3.3V

SPI数据信号

22

GPIO_6

3.3V

gpio编号为130

23

SPI_SCLK

3.3V

SPI时钟信号

24

SPI_CS0

3.3V

SPI片选信号0

25

GND

GND

电源地

26

SPI_CS1

3.3V

SPI片选信号1

27

GPIO_30

3.3V

gpio编号为138

28

GPIO_31

3.3V

gpio编号为139

29

GPIO_21

3.3V

gpio编号为132

30

GND

GND

电源地

31

GPIO_22

3.3V

gpio编号为121

​32

GPIO_26

3.3V

gpio编号为120

33

GPIO_23

3.3V

gpio编号为122

34

GND

GND

电源地

35

GPIO_24

3.3V

gpio编号为127

36

GPIO_27

3.3V

gpio编号为123

37

GPIO_25

3.3V

gpio编号为133

38

GPIO_28

3.3V

gpio编号为126

39

GND

GND

电源地

40

GPIO_29

3.3V

gpio编号为131

你可能感兴趣的:(debian,ubuntu,python)