无法访问 BeagleBone Black GPIO

Unable to access BeagleBone Black GPIO

我有一个 BeagleBone Black board,我正在使用下面提到的图像文件。 https://debian.beagleboard.org/images/bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz

我打算用c语言来操作这个板子的GPIO引脚

为此,我已经完成了 link:https://beagleboard.org/static/librobotcontrol/installation.html

按照此 link 执行所有步骤后,我获得的结果与本文档的检查功能步骤 [最后一步] 中提到的相同。

此外,我按照这个文档进行c语言设置: https://github.com/beagleboard/librobotcontrol/blob/master/docs/src/project_template.dox

和运行此源代码: https://beagleboard.org/static/librobotcontrol/rc_test_leds_8c-example.html

所有这些过程都已完成,没有任何错误。

################################## 现在我想访问开发板的 GPIO 引脚。为此,我准备了一个基本代码。

我们以引脚P8_10 / GPIO2[4]为例。因此,我的代码将是:

#include <stdio.h>
#include <rc/led.h>
#include <rc/gpio.h>
#include <rc/time.h>
//#define WAIT_US 500000 // time to light each LED in microseconds
int main()
{
rc_gpio_init(2,4,GPIOHANDLE_REQUEST_OUTPUT); /* declare as output*/
rc_gpio_set_value(2,4,1); /* set high */
rc_gpio_cleanup(2,4);
    return 0;
}

执行此代码后,我没有得到预期的输出。

你对这段代码有什么建议吗? 或者还有其他方法吗?

谢谢。

尝试配置引脚 gpio

config-pin p9.9 gpio

然后试试你的来源。如果这不起作用,并且在 BBB 上复用 gpio 引脚会给您带来问题。您可以随时测试您的特定引脚 w/:

config-pin -q <Your Specific Pin Used>

例如:config-pin -q p9.9 将告诉您它是如何混合的。

此外,大多数引脚都可以通过 mvduin 的测试脚本找到。

这是 github 的在线站点:https://github.com/mvduin/bbb-pin-utils

此处:https://beagleboard.org/Support/bone101

一旦向下滚动,该站点就会显示一系列不同的方式来混合使用 GPIO、i2c、UART 等的 BBB...

这和更多可以成为在 librobotcontrol 库下使用 C 语言编程之外使用 BBB 的良好基础。

此外,这是一个很好的入门,介绍了在 C 库中处理 GPIO 的方式。有问题:https://beagleboard.org/librobotcontrol/group___g_p_i_o.html