发布时间:2026/7/14 5:25:19
RK3576开发板GPIO驱动入门教程,基于触觉智能开发板教学-上 触觉智能Purple Pi OH2开发板板载双20Pin的GPIO排针(兼容树莓派)提供了丰富的拓展空间。本文基于Purple Pi OH2为大家讲解GPIO概念、原理、代码示例、调试方法灯。一、GPIO基本概念1.1什么是GPIOGPIOGeneral Purpose Input/Output通用输入输出是嵌入式系统中最基础的外设接口。每个GPIO引脚可以被配置为•输入模式读取外部信号如按键、传感器•输出模式控制外部设备如LED、继电器•中断模式检测边沿变化触发中断1.2 RK3576 GPIO资源RK3576芯片共有5组GPIOGPIO0~GPIO4每组包含32个引脚A0-A7, B0-B7, C0-C7, D0-D7。从设备树可以看到gpio0 gpio0; gpio1 gpio1; gpio2 gpio2; gpio3 gpio3; gpio4 gpio4;1.3 GPIO命名规则RK平台使用GPIOx_PYz的命名方式•x: GPIO组号0-4•Y:端口A、B、C、D•z:引脚号0-7例如GPIO0_PB4表示GPIO0组的B端口第4号引脚二、GPIO工作原理2.1内部结构2.2工作模式模式说明典型应用输入模式高阻态读取外部电平按键检测输出模式驱动外部电路LED控制中断模式边沿/电平触发事件通知复用模式作为其他功能UART/I2C等引脚复用三、GPIO设备树配置3.1在设备树中添加GPIO节点编辑设备树文件如ido-evb7609-v1a.dtsi// 定义 LED 设备节点 / { leds: leds { status okay; compatible gpio-leds; pinctrl-names default; pinctrl-0 leds_gpio; work_led: work { gpios gpio4 RK_PC7 GPIO_ACTIVE_HIGH; linux,default-trigger heartbeat; }; hub_rst { gpios gpio4 RK_PD0 GPIO_ACTIVE_HIGH; default-stateon; }; }; // USB 电源控制 cgpio:cgpios{ status okay; compatible cust,cgpio; usb_pwr { //SD-card、USB-A、Wi-Fi gpios gpio0 RK_PB6 GPIO_ACTIVE_HIGH; init-status 1; }; }; };3.2 pinctrl 引脚配置pinctrl { // LED 引脚配置 led_pins: led-pins { rockchip,pins 0 RK_PB4 RK_FUNC_GPIO pcfg_pull_none; }; // 按键引脚配置 key_pins: key-pins { rockchip,pins 0 RK_PA0 RK_FUNC_GPIO pcfg_pull_up; }; };3.3 GPIO上下拉配置详解RK3576的GPIO支持多种上下拉配置通过rockchip,pins属性的最后一个参数指定。上下拉配置类型配置设备树值说明典型应用上拉pcfg_pull_up引脚默认上拉到高电平按键输入、I2C SDA/SCL下拉pcfg_pull_down引脚默认下拉到低电平复位信号、使能信号无上下拉pcfg_pull_none浮空输入无上拉电阻LED输出、GPIO输出保持pcfg_pull_bus总线保持器低功耗场景实际设备树配置示例pinctrl { /* LED 引脚 - 无上拉输出模式不需要 */ leds_gpio: leds-gpio { rockchip,pins 4 RK_PC7 RK_FUNC_GPIO pcfg_pull_none, /* work_led */ 4 RK_PD0 RK_FUNC_GPIO pcfg_pull_none; /* hub_rst */ }; /* USB 电源 - 无上拉 */ usb_pwr: usb-pwr { rockchip,pins 0 RK_PB6 RK_FUNC_GPIO pcfg_pull_none; }; /* 耳机检测 - 上拉按键检测 */ hp_det: hp-det { rockchip,pins 3 RK_PB0 RK_FUNC_GPIO pcfg_pull_up; }; /* WiFi 唤醒 - 下拉 */ wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins 0 RK_PB0 RK_FUNC_GPIO pcfg_pull_down; }; /* 按键输入 - 上拉 */ adc_keys_pins: adc-keys-pins { rockchip,pins 0 RK_PA0 RK_FUNC_GPIO pcfg_pull_up; }; /* I2C 引脚 - 上拉I2C 标准需要 */ i2c2m0_xfer: i2c2m0-xfer { rockchip,pins 1 RK_PB3 9 pcfg_pull_up, /* i2c2_sda_m0 */ 1 RK_PB4 9 pcfg_pull_up; /* i2c2_scl_m0 */ }; };上下拉选择原则注意事项1.输出模式通常使用pcfg_pull_none因为GPIO输出是推挽驱动2.输入按键必须使用pcfg_pull_up确保按键未按下时读到高电平3.I2C总线必须使用pcfg_pull_upI2C是开漏输出需要上拉电阻4.中断引脚根据触发方式选择上升沿触发用下拉下降沿触发用上拉今天就先写到这里 下期带来驱动代码示例和调试方法 以及常见问题解决

相关新闻

2026/7/14 5:25:19

纯净版驱动管理工具:无广告不限速,一键解决电脑驱动问题

在日常电脑使用中,驱动问题总是让人头疼——系统更新后声卡没声音了,新买的打印机连不上,游戏帧数上不去,这些问题背后往往都是驱动程序在作祟。更让人烦恼的是,很多驱动管理软件要么下载速度慢如蜗牛,要么…

2026/7/14 5:25:19

KMS_VL_ALL_AIO:3分钟快速激活Windows系统的完整指南

KMS_VL_ALL_AIO:3分钟快速激活Windows系统的完整指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活而烦恼吗?每次开机看到那个烦人的激活提醒&am…

2026/7/14 8:55:28

C++系统级高效并行编程:从内存模型到五大核心模式实战

1. 从“并行”到“高效并行”:C系统级优化的核心战场如果你是一名C开发者,尤其是在高性能计算、游戏引擎、金融交易或者基础设施领域摸爬滚打过,那么“并行”这个词对你来说,可能既熟悉又头疼。熟悉是因为,多核CPU、GP…

2026/7/14 8:55:28

AI竞争新规则:从技术指标到战略叙事的技术实践指南

如果你是一名AI开发者或技术决策者,最近可能已经注意到一个现象:在技术社区和媒体报道中,关于AI竞争的讨论正在从纯粹的技术指标转向更复杂的战略叙事。这种变化不仅仅是舆论风向的转变,它实际上正在直接影响全球AI研发资源的分配…

2026/7/14 8:55:28

使用Phrase实现Android应用国际化:支持复数形式的完整指南

使用Phrase实现Android应用国际化:支持复数形式的完整指南 【免费下载链接】phrase Phrase is an Android string resource templating library 项目地址: https://gitcode.com/gh_mirrors/ph/phrase 在全球化应用开发中,Android国际化是触达全球…

2026/7/14 8:55:28

APContact字段详解:掌握iOS通讯录数据的完整提取方法

APContact字段详解:掌握iOS通讯录数据的完整提取方法 【免费下载链接】APAddressBook Easy access to iOS address book 项目地址: https://gitcode.com/gh_mirrors/ap/APAddressBook 想要在iOS应用中高效访问通讯录数据吗?APAddressBook库的APCo…

2026/7/14 8:50:28

定制Alot终端邮件体验:从键盘快捷键到主题美化完全指南

定制Alot终端邮件体验:从键盘快捷键到主题美化完全指南 【免费下载链接】alot Terminal-based Mail User Agent 项目地址: https://gitcode.com/gh_mirrors/al/alot Alot是一款功能强大的终端邮件用户代理(MUA),为命令行爱…

2026/7/13 6:38:38

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&#…

2026/7/13 14:26:14

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境随着新能源汽车行业的快速发展,充电通信协议的标准化和测试验证变得尤为重要。GB/T 27930-2023作为中国智能充电协议的最新版本,对充电机与电动汽车之间的通信提出了更严格…

2026/7/13 18:07:53

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡 【免费下载链接】rtl8852be Realtek Linux WLAN Driver for RTL8852BE 项目地址: https://gitcode.com/gh_mirrors/rt/rtl8852be 还在为Linux系统无法识别RTL8852BE Wi-Fi 6网卡而烦恼吗?&#x1f…

2026/7/14 0:04:21

5分钟掌握足球PBR材质制作:Photoshop与Unity高效工作流

1. 项目概述:为什么是足球PBR材质?在游戏开发,尤其是体育竞技类游戏的制作中,一个看起来“对味”的足球,往往比我们想象中更重要。它不仅是赛场上的核心道具,更是玩家视觉焦点和沉浸感的重要来源。一个塑料…

2026/7/14 0:04:21

ChatGPT联网搜索失败,92%开发者误判为网络问题——真实根因竟是LLM推理会话上下文污染导致Search Agent进程静默退出(含strace复现脚本)

更多请点击: https://intelliparadigm.com 第一章:ChatGPT 联网搜索失败 当 ChatGPT 的联网搜索功能无法正常工作时,用户常遇到“搜索不可用”“未连接到互联网”或空白响应等现象。该问题并非模型本身缺陷,而是由权限配置、网络…

2026/7/13 11:33:05

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…