0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

触觉智能 2023-09-09 08:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文分享的是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 产品手册

a5fe64ec-4ea8-11ee-a20b-92fbcf53809c.pnga64f2d50-4ea8-11ee-a20b-92fbcf53809c.png

安装python gpio库

apt-getupdate
apt -yinstall 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:
whileTrue:
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

a6916634-4ea8-11ee-a20b-92fbcf53809c.png

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:
whileTrue:
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。

a6af64fe-4ea8-11ee-a20b-92fbcf53809c.png


排针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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 主板
    +关注

    关注

    54

    文章

    2273

    浏览量

    76140
  • 开源
    +关注

    关注

    3

    文章

    4033

    浏览量

    45572
  • GPIO
    +关注

    关注

    16

    文章

    1313

    浏览量

    55730
  • python
    +关注

    关注

    57

    文章

    4858

    浏览量

    89588
  • Purple
    +关注

    关注

    0

    文章

    8

    浏览量

    386
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    termux如何搭建python游戏

    用VS Code编辑 - 版本控制:`git`管理代码,同步至GitHub/Gitee - 任务调度:通过`crontab`设置定时测试(如每分钟运行游戏脚本:`*/1 * * * * python
    发表于 08-29 07:06

    技能+1!如何在树莓派上使用C++控制GPIO

    和PiGPIO等库,C++可用于编程控制树莓派的GPIO引脚。它提供了更好的性能和控制能力,非常适合对速度和精度要求较高的硬件项目。在树莓派社区中,关于“Python
    的头像 发表于 08-06 15:33 3584次阅读
    技能+1!如何在树莓派上使用C++<b class='flag-5'>控制</b><b class='flag-5'>GPIO</b>?

    【BPI-CanMV-K230D-Zero开发板体验】+灯效控制Python编程

    ,在学习Python编程的基础上通过GPIO来实现LED灯的控制。 在开发板上,仅有的2个可供GPIO控制的器件是RGB_LED和按键,其中
    发表于 06-27 17:33

    RISC-V生态又一里程碑!Debian官宣支持RV64

    是什么?可以说Debian最早的Linux发行版,甚至目前众多Linux发行版都是基于Debian的,比如Ubuntu、Linux Mint、Pop!_OS 等,这些衍生版本继承了 Debia
    的头像 发表于 05-23 01:10 2792次阅读

    DebianUbuntu哪个好一些?

    在Linux发行版世界中,DebianUbuntu长期占据服务器与开发者生态的核心地位。前者以稳定性和纯粹开源理念著称,后者则凭借易用性与商业友好性成为新手首选。本文将从技术特性、应用场景及生态
    的头像 发表于 05-07 10:58 856次阅读

    鸿蒙北向开发OpenHarmony5.0 DevEco Studio开发工具安装与配置

    本文介绍OpenHarmony5.0 DevEco Studio开发工具安装与配置,鸿蒙北向开发入门必备!由触觉智能Purple Pi OH鸿蒙开发板演示。搭载了瑞芯微RK3566四核处理器,支持开源鸿蒙OpenHarmony3
    的头像 发表于 03-28 18:05 1345次阅读
    鸿蒙北向开发OpenHarmony5.0 DevEco Studio开发工具安装与配置

    仅仅使用代码,就能点亮树莓派的 GPIO 世界

    使用Python创建RESTAPI接口也是合情合理的。然后,我们可以调用特定的函数,例如控制或读取GPIO。这可以方便地控制LED或其他传感器/模块。其美妙之处在
    的头像 发表于 03-25 09:31 488次阅读
    仅仅使用代码,就能点亮树莓派的 <b class='flag-5'>GPIO</b> 世界

    GPIO使用教程 GPIO接口应用

    GPIO(General-Purpose Input/Output,通用输入/输出)接口是电子设备中的一个重要组成部分,主要用于控制和读取设备的数字信号。它通过简单的高(1)或低(0)电平来与系统
    的头像 发表于 01-31 10:10 5198次阅读

    GPIO错误排查与解决

    在嵌入式系统和微控制器编程中,通用输入输出(GPIO)是最常见的接口之一。然而,在使用GPIO时,我们可能会遇到各种错误。 1. 理解GPIO GP
    的头像 发表于 01-09 09:46 3718次阅读

    GPIO在树莓派中的应用

    树莓派(Raspberry Pi)是一款由英国树莓派基金会开发的信用卡大小的单板计算机,它具有强大的功能和灵活性,可以用于各种项目和应用。通用输入输出(GPIO)是树莓派的一个重要特性,它允许用户
    的头像 发表于 01-09 09:41 1252次阅读

    OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示

    本文介绍瑞芯微主板/开发板编译OpenHarmony源码后烧录镜像的教程,触觉智能Purple Pi OH鸿蒙开发板演示。搭载了瑞芯微RK3566四核处理器,树莓派卡片电脑设计,支持开源鸿蒙OpenHarmony3.2-5.0系
    的头像 发表于 12-30 10:08 1515次阅读
    OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示

    OpenHarmony怎么修改DPI密度值?触觉智能RK3566鸿蒙开发板演示

    开源鸿蒙OpenHarmony系统下,修改DPI密度值的方法,触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566四核处理器,Laval鸿蒙社区推荐开发板,已适配全新开源鸿蒙OpenHarmony5.0 Re
    的头像 发表于 12-24 11:46 1086次阅读
    OpenHarmony怎么修改DPI密度值?触觉智能RK3566鸿蒙开发板演示

    VMware环境下,同时烧录固件检测不到设备如何解决?触觉智能鸿蒙开发板演示

    本文介绍PC电脑端运行VMware环境下,同时烧录固件检测不到设备的解决方法。触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566芯片,类树莓派设计,Laval官方社区主荐,已适配全新OpenHarmony5
    的头像 发表于 12-19 09:36 1126次阅读
    VMware环境下,同时烧录固件检测不到设备如何解决?触觉智能鸿蒙开发板演示

    Ubuntu系统的优缺点分析 Ubuntu系统与Windows的比较

    Ubuntu是一个基于Linux的开源操作系统,它以其稳定性、安全性和社区支持而闻名。以下是对Ubuntu系统优缺点的分析,以及与Windows系统的比较: Ubuntu系统的优点: 开源和免费
    的头像 发表于 12-12 14:31 5397次阅读

    OpenHarmony默认30秒熄屏太麻烦?触觉智能鸿蒙开发板教你轻松取消

    OpenHarmony系统开机后 30 秒会自动息屏,教大家两招轻松取消自动息屏,触觉智能Purple Pi OH鸿蒙开发板演示,已适配全新OpenHarmony5.0 Release系统!
    的头像 发表于 12-09 11:45 1305次阅读
    OpenHarmony默认30秒熄屏太麻烦?触觉智能鸿蒙开发板教你轻松取消