Firefly开源社区

打印 上一主题 下一主题

[技术讨论] 如何访问底板上特定规格的GPIO接口

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-6 16:15:54      楼主
1、GPIO2_C0和GPIO0_D6是输出和输入3.3V。另外两个GPIO的话就需要你自己从底板里面引出来了。
2、python 调用就是普通的 gpio 口调用方式
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-7 14:23:23      沙发
new_per 发表于 2022-7-6 21:35
那么在调用GPIO2_C0和GPIO0_D6时针脚号pin是多少呢

你可以看下官网的维基教程:https://wiki.t-firefly.com/iCore-3568JQ/driver_gpio.html
这些都是通用的
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-8 15:06:48      板凳
本帖最后由 799959745 于 2022-7-8 15:27 编辑
new_per 发表于 2022-7-7 23:45
谢谢,可以计算得到pin number, GPIO2_C0 pin 80可以正常使用,但是GPIO0_D6 pin 30不能使用,通过echo 3 ...

1、规格书标错了,GPIO0_D6 应该改成 GPIO1_A1 。
2、GPIO口是很多的,但是需要配合底板的功能使用。一般都是买核心板然后根据需求自己制作底板的。如果不想自己制作底板,只能根据规格书将你使用到的GPIO引出来了
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-8 16:41:56      地板
你可以使用串口4当作GPIO普通管脚使用。分别是:(UART4_TX)GPIO2_A6 和 (UART4_RX)GPIO2_A7。需要在设备树rv1126-firefly-rk809.dtsi把uart4的配置关掉:
  1. /*
  2. &uart4 {
  3.         pinctrl-0 = <&uart4m1_xfer>;
  4.         status = "okay";
  5. };
  6. */
复制代码
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-9 09:27:37      5#
你可以用 fine -name xxx 搜索一下。具体路径在:sdk/kernel/arch/arm/boot/dts/rv1126-firefly-jd4-BE-45.dtsi
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-9 17:00:00      6#
你先确定管脚是否可以设置高低电平?不能的话要进行:echo out > direction 来设置 GPIO 为输出模式。然后再echo 1 > value设置高电平。万用表去量,看看是不是有电平变化。
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-9 17:01:49      7#
new_per 发表于 2022-7-9 16:47
1, 改成GPIO1_A1后算出pin 为33, 可以通过echo 33 > /sys/class/gpio/export成功导出了,但是没能正确从 ...

如果有电平变化的话,那就没问题了,剩下就是你的软硬件调试了。
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-11 14:50:29      8#
本帖最后由 799959745 于 2022-7-11 14:55 编辑
music1913 发表于 2022-7-11 12:07
我用上述命令并未搜索到相应的文件,同样采用统配符:

你有下载firefly官方的RV1126 SDK开发包吗?不是在板子上跑find命令,是在PC电脑上跑。使用find命令查找的SDK文件在哪里。
你先看下维基教程和相关的开发流程吧。内核需要在PC上面编译烧录进板子,不是直接在板子上编译的。
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-12 15:48:16      9#
music1913 发表于 2022-7-12 13:10
谢谢回复。
我已经在 Ubuntu 20.04.4 (x64) PC机上安装了SDK: rv1126_rv1109_linux_release_20211022, ...

首先,默认使用的编译环境是ubuntu18.04,已经经过验证过编译不会出错。如果不是ubuntu18.04则需要自行安装原装的ubuntu18.04或者使用docker 安装ubuntu18.04进行编译开发。如果不想使用ubuntu18.04,则只能自行解决编译问题。
其次是刚拿到的sdk是一个基础包,需要进行更新最新才可以,维基有介绍怎么更新。
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11377

突出贡献

发表于 2022-7-13 09:09:43      10#
music1913 发表于 2022-7-12 15:55
好的,我再去使用指定的 Ubuntu系统。
问题:

这些问题你都可以自行尝试的,成功了就直接pass了。不用等我回你再去做
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表