官方的网页上的说明,在sdk对应的目录下面没有找到 对应的驱动程序gpio-firefly.c,麻烦请单独提供一下这个测试程序?(SDK 的路径为:kernel/drivers/gpio/)
目前一些demo例子主要在Android SDK中
gpio-firefly.zip (1.32 KB)
zyk 发表于 2022-5-5 10:52
目前一些demo例子主要在Android SDK中
kernel/arch/arm64/boot/dts/rockchip/目录下还缺少rk356x-firefly-demo.dtsi这个文件,麻烦也提供一下,多谢哈
你好!想问一下这个测试程序能跑起来吗,我这里用vscode怎么提示找不到那些头文件
Ender 发表于 2022-7-27 13:58
你好!想问一下这个测试程序能跑起来吗,我这里用vscode怎么提示找不到那些头文件
你好,Android SDK一般都包含相关的文件了。若你使用的是linux sdk可以先同步一下更新
zyk 发表于 2022-7-27 14:26
你好,Android SDK一般都包含相关的文件了。若你使用的是linux sdk可以先同步一下更新
不是不是,我的意思是说提示我没有of-gpio.h头文件。是代码要放在特定的位置才找得到吗?

本帖最后由 zyk 于 2022-7-28 16:15 编辑
相关文件,在SDK目录下的kernel/include/linux应该都可以找得到,你可以找找看。提示没有这个文件是否是IDE插件没配好的问题
zyk 发表于 2022-7-27 15:51
相关文件,在SDK目录下的kernel/include/linux应该都可以找得到,你可以找找看。提示没有这个文件是否是IDE …
相关文件我都能找到,但是编译的时候就是提示没有。在vscode里添加了路径以后,已经能自动补全头文件里的函数了,但是编译还是提示没有文件或目录。大佬求救{:5_228:}
Ender 发表于 2022-7-28 09:53
相关文件我都能找到,但是编译的时候就是提示没有。在vscode里添加了路径以后,已经能自动补全头文件里的 …
怎么编译的
zyk 发表于 2022-7-28 16:15
怎么编译的
aarch64-linux-gnu-gcc xxx.c -o xxx
是编译应用层程序?kernel编译在wiki上有说明
zyk 发表于 2022-7-28 20:36
是编译应用层程序?kernel编译在wiki上有说明
是编译应用层的程序。我想在板子上用GPIO和中断,是想用<linux/gpio.h>(编译器目录下)提供的接口的,比如gpio_request()。但是发现没有这些函数,然后用SDK/kernal/include/linux的<linux/gpio.h>又提示“没有那个文件或目录(实际上有),所以不知道是怎么回事。这里的头文件不能调用吗,还是说我的调用方法错了,又或者是需要设置环境变量什么的?这个和kernal编译应该没关系吧。
{:5_228:}现在只能暂时用文件操作控制GPIO。
Ender 发表于 2022-7-29 09:37
是编译应用层的程序。我想在板子上用GPIO和中断,是想用(编译器目录下)提供的接口的,比如gpio_request …
可以网上搜索一下,gcc可以通过参数指定头文件和库的路径
Ender 发表于 2022-7-29 09:37
是编译应用层的程序。我想在板子上用GPIO和中断,是想用(编译器目录下)提供的接口的,比如gpio_request …
可以网上搜索一下,gcc可以通过参数指定头文件和库的路径
zyk 发表于 2022-7-29 17:25
可以网上搜索一下,gcc可以通过参数指定头文件和库的路径
好的好的,我有空试试,谢谢大佬
zyk 发表于 2022-7-29 17:25
可以网上搜索一下,gcc可以通过参数指定头文件和库的路径
用参数设置了以后好像可以链接到了,但是提示缺少asm/bitops.h,我看了下kernal/include下没有asm文件夹,只有asm-generic(但是kernal/include/asm-generic和kernal/include/linux里有这个文件),是我的文件缺失了吗?
用find命令搜索一下这个文件看看
zyk 发表于 2022-8-2 14:39
用find命令搜索一下这个文件看看
算了算了,暂时不折腾这个了{:5_228:}我还想问问GPIO的复用问题,有些GPIO没办法改变value,我想应该是被复用为其他功能了,有办法在应用层换回GPIO功能吗?我看到wiki上的都是修改dtsi的,看不懂也不敢乱动。
Ender 发表于 2022-8-2 17:14
算了算了,暂时不折腾这个了我还想问问GPIO的复用问题,有些GPIO没办法改变value,我想应该是被 …
没有。不过应该可以用IO命令去调寄存器,但是也比较麻烦
