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

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

3天内不再提示

GPIO 与 40-pin

jf_70714899 来源:jf_70714899 作者:jf_70714899 2023-03-22 14:29 次阅读

GPIO 与 40-pin

Raspberry Pi GPIO与40-pin 对应

poYBAGQan5yAWip1AAMoWJXXbj8093.png

任何GPIO引脚都可以在软件中指定为输入或输出,适用广泛用途。

pYYBAGQan7GAD7iLAACKMHzJdMw221.png

::: warning

GPIO 引脚的编号不按数字顺序排列;板上存在 GPIO 引脚 0 和 1(物理引脚 27 和 28),但保留用于高级用途(见下文)。

:::

Voltages

两个5V引脚、两个3.3V引脚,以及一些不可配置的接地引脚(0V)。意味着输出设置为3.3V,输入为3.3V容差

Outputs

GPIO作为输出,可以设为高(3.3V) 或者低(0V).

Inputs

GPIO作为输入,可以读取为高(3.3V) 或者低(0V)。使用上拉或下拉电阻器可以更轻松地实现。GPIO2 和 GPIO3 固定上拉电阻,其他引脚可以在软件中配置。

More

除了简单的输入和输出设备,GPIO引脚还可以用于各种替代功能,有些可用于所有引脚,有些可用于特定引脚。

PWM (脉冲宽度调制)

Software PWM available on all pins

Hardware PWM available on GPIO12, GPIO13, GPIO18, GPIO19

SPI

SPI0:MOSI (GPIO10); MISO (GPIO9); SCLK (GPIO11); CE0 (GPIO8), CE1 (GPIO7)

SPI1: MOSI (GPIO20); MISO (GPIO19); SCLK (GPIO21); CE0 (GPIO18); CE1 (GPIO17); CE2 (GPIO16)

I2C

Data: (GPIO2); Clock (GPIO3)

EPROM Data: (GPIO0); EEPROM Clock (GPIO1)

Serial

TX (GPIO14); RX (GPIO15)

GPIO pinout

可以在终端窗口,运行 pinout 查看参考信息。这工具又 GPIO Zero Python库提供,Raspberry Pi os 默认已经安装。

pYYBAGQan8KALR4IAAD248VR3nc167.png

有关 GPIO 引脚高级功能的更多详细信息,参考.

Permissions

为了能使用GPIO端口,你需要将用户加到 gpio 组。 pi 用户默认是在gpio组中,其他用户需要自己加入。

sudo usermod -a -G gpio 

GPIO in Python

GPIO Zero 可以很方便使用python控制GPIO,文档参考.

LED

使用GPIO17 控制led,示例:

from gpiozero import LEDfrom time import sleep led = LED(17) whileTrue:    led.on()    sleep(1)    led.off()    sleep(1)

使用 python file 运行示例,Led将反复闪烁和熄灭。

LED 函数包括: on(), off(), toggle(), and blink().

BUTTON

使用GPIO2 读取按键状态,示例:

from gpiozero import Buttonfrom time import sleep button = Button(2) whileTrue:    if button.is_pressed:        print("Pressed")    else:        print("Released")    sleep(1)

按钮功能包括

属性: is_pressed 、 is_held

回调函数: when_pressed 、 when_released 、 when_held

方法:wait_for_press 、wait_for_release

BUTTON + LED

按钮和LED组合使用:

from gpiozero import LED, Button led = LED(17)button = Button(2) whileTrue:    if button.is_pressed:        led.on()    else:        led.off()

或者:

from gpiozero import LED, Button led = LED(17)button = Button(2) whileTrue:    button.wait_for_press()    led.on()    button.wait_for_release()    led.off()

or:

from gpiozero import LED, Button led = LED(17)button = Button(2) button.when_pressed = led.onbutton.when_released = led.off

审核编辑黄宇

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

    关注

    16

    文章

    1190

    浏览量

    51869
  • 树莓派
    +关注

    关注

    116

    文章

    1697

    浏览量

    105476
收藏 人收藏

    评论

    相关推荐

    GPIO_Write(GPIOB, GPIO_Pin_6 | GPIO_Pin_8);是什么意思啊?

    GPIO_Write(GPIOB, GPIO_Pin_6 | GPIO_Pin_8);是什么意思啊?
    发表于 08-26 16:29

    GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_3)和GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_3)有什么区别

    GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_3)和GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_3)有什么区别
    发表于 03-16 19:50

    请问GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_3,~GPIO_PIN_3)这是什么意思?

    _PORTF_BASE, GPIO_PIN_3,GPIO_STRENGTH_4MA,GPIO_PIN_TYPE_STD);GPIODirModeSet(GPIO_PORTF_BASE,
    发表于 06-11 03:14

    MCC基于树莓派的HAT模块

    ),数模转换器(DAC)或条件数字输入和输出(DIO)。但是,可以通过USB端口或支持SPI和I2C的GPIO40-pin接头扩展这些功能。直接和树莓派GPIO进行堆栈式连接的设备称为HAT
    发表于 09-05 11:45

    GPIO口的相关资料分享

    能力均可达到20mA,但40-pin40-pin以上单片机的整个芯片最大不要超过120mA,20-pin以上及3
    发表于 02-18 07:52

    瑞昱realtek的PHY芯片 RTL8211系列新版区别?

    、RTL8211F-CG 40-Pin QFN 2、RTL8211FI-CG 40-Pin QFN 3、RTL8211FD-CG 40-Pin QFN4、RTL8211FDI-CG 40-Pi
    发表于 05-03 18:44

    赛昉科技40-Pin GPIO Header用户指南

    和调试 GPIO 、 I2C 、 SPI 和 PWM 的说明,如“ 准备 ”、 GPIO 操作 ”、 I2C 操作 ”、 SPI 操作 ”、 PWM 操作 ”,和 UART 操作 ”章节所述。为如何使用 40
    发表于 05-05 14:28

    基于RK3566设计的树莓派3B+(Raspberry Pi 3 Model B+)替代方案

    40-Pin GPIO扩展 40-Pin GPIO扩展 电源 5V/2A电源输入,支持POE 5V/2A电源输入,支持POE 操作系统 Android11.0, debian 11,
    发表于 05-06 15:48

    PIC18F448/PIC18F458 pdf datash

    ; PIC18F448• PIC18F458 These devices are available in 28-pin, 40-pin and 44-pin packages. They are differen
    发表于 01-23 21:56 49次下载

    【STemWin】STM32H743VI单片机通过LTDC驱动4.3寸800×480高分辨率的40-pin FPC彩屏并裸机移植STemWin图形库

    【STemWin】STM32H743VI单片机通过LTDC驱动4.3寸800×480高分辨率的40-pin FPC彩屏并裸机移植STemWin图形库
    发表于 11-26 20:51 31次下载
    【STemWin】STM32H743VI单片机通过LTDC驱动4.3寸800×480高分辨率的<b class='flag-5'>40-pin</b> FPC彩屏并裸机移植STemWin图形库

    F103_GPIO_输入初始化

    #define in_port GPIOB#define in_pin (GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO
    发表于 12-04 11:36 7次下载
    F103_<b class='flag-5'>GPIO</b>_输入初始化

    STM32f1学习笔记——GPIO

    32为宽带的设置寄存器,一共64位,每个GPIO占用4位配置位。其中两位设置GPIO的方向,另外两位设置GPIO的工作模式。GPIO中的常用参数1、
    发表于 12-05 13:21 1次下载
    STM32f1学习笔记——<b class='flag-5'>GPIO</b>

    模拟IIC_读写BQ40Z50模块

    读写BQ40Z50模块,我使用的是32单片机该模拟IIC仅适用于BQ40Z50模块,因为每个模块延时有差异1.初始化GPIO,根据你所使用的单片机完成初始化
    发表于 12-09 16:06 26次下载
    模拟IIC_读写BQ<b class='flag-5'>40</b>Z50模块

    3.STC15W408AS单片机GPIO

    能力均可达到20mA,但40-pin40-pin以上单片机的整个芯片最大不要超过120mA,20-pin以上及3
    发表于 12-23 19:14 19次下载
    3.STC15W408AS单片机<b class='flag-5'>GPIO</b>

    STM32-GPIO详解

    STM32-GPIO配置介绍typedef struct { uint32_t GPIO_Pin; GPIOMode_TypeDef GPIO
    发表于 12-24 19:12 15次下载
    STM32-<b class='flag-5'>GPIO</b>详解