瑞芯微RK3568开发:GPIO实践篇

文章介绍了RK3568芯片中GPIO的两种主要地址类型——MUX复用配置地址和通用寄存器地址,并提到了三种操作GPIO的方法,包括使用iotool工具、用户态调用以及在uboot或kernel中的编程操作。通过理解GPIO框架和这些实践方法,可以更好地掌握RK3568的GPIO控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        SOC平台各类GPIO构建原理是大道一统的,在各个诸如状态、数据、中断和屏蔽等寄存器具体含义用法,有少许差异。玩好RK的GPIO,需要先理解这类通用接口的框架。

        介绍RK3568的GPIO,认为讲2类重要地址和记录几种编程实践方法即可。

一、2类地址

        RK3568的MUX复用配置地址和通用寄存器类地址。

1、MUX功能复用配置类寄存器,基址:0xFDC20000(GPIO0 Bank)、0xFDC60000(GPIO1-GPIO4 Banks)。

2、GPIO通用类数据、状态、中断、MASK类寄存器,基址:0xFDD60000(GPIO0)、0x0xFE740000(GPIO1)、0xFE750000(GPIO2)、0xFE760000(GPIO3)、0xFE770000(GPIO4)。

二、几种操作方式

1、io tool

io -4 -w 0xFDD6000C 0xffff4000
io -4 -w 0xFDD60004 0xffff4081
io -4 -r 0xFDD6000C
io也可以单字节操作,参考io -h

2、用户态类调用

内核注册了gpio接口操作命令行,

查看以注册gpio端口:cat /sys/kernel/debug/gpio;

申请和释放:echo n > /sys/class/gpio/export,echo n > /sys/class/gpio/unexport;

3、uboot或kernel编程

裸机直接对寄存器物理地址进行读写操作,如writel和readl;

上系统接口的话,有标准的gpio接口,dts和of_xxx那一套;

### RK3562J 上位机开发文档、工具下载及配置教程 #### 文档获取 对于RK3562J芯片的上位机开发,官方通常会提供详尽的技术手册和应用笔记来指导开发者完成项目。这些资源可以从瑞芯微官方网站获得,网站内设有专门的产品支持页面供用户查阅最新的技术文档和技术白皮书。 #### 工具链安装 为了简化交叉编译过程并提高效率,建议采用预构建好的GCC ARM Embedded Toolchain作为主要工具链。该工具链可以在ARM官网免费下载,并适用于多种基于ARM架构的目标平台,包括但不限于RK3562J系列处理器[^1]。 #### 系统镜像烧录 针对初次使用者而言,最便捷的方式是从制造商处获取已集成必要驱动程序和支持软件包的操作系统映像文件(如Ubuntu LTS版本)。利用SD卡读写器配合Etcher这类简易实用的小型应用程序即可轻松完成刷机操作。 #### 开发环境搭建 一旦硬件准备就绪,则需着手建立适合编程工作的IDE(Integrated Development Environment),例如VSCode加上C/C++扩展插件组合;或是更为专业的Eclipse CDT等选项均能胜任此项工作。此外还需确保主机端具备Git版本控制系统以便于管理源代码库。 #### GPIO 控制实践 鉴于上述提及的内容也涵盖了基础I/O端口操控方法论的学习——即通过简单的Python脚本实现LED灯闪烁效果展示GPIO功能特性。这不仅有助于加深理解物理层面上各引脚的作用机制,同时也为进一步探索更复杂的外设交互打下了坚实的基础。 ```python import RPi.GPIO as GPIO import time # 设置BCM编号方式 GPIO.setmode(GPIO.BCM) # 定义管脚 led_pin = 18 try: # 将GPIO初始化为输出状态 GPIO.setup(led_pin, GPIO.OUT) while True: # 输出高电平使LED点亮 GPIO.output(led_pin, GPIO.HIGH) time.sleep(1) # 延迟一秒 # 输出低电平让LED熄灭 GPIO.output(led_pin, GPIO.LOW) time.sleep(1) finally: GPIO.cleanup() # 清理释放资源 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值