宁远电子RK3399主板DLT3399A-GPIO调用说明文档

GPIO口控制

       RK3399主板在DLT3399A板卡上总共有6个GPIO口,看到板卡反面对应的引脚gpio丝印,选择相对应的gpio控制节点,接口位置如下图所示:

      RK3399是瑞芯微推出的一款低功耗、高性能的应用处理器芯片,该芯片基于Big.Little架构,即具有独立的NEON协同处理器的双核Cortex-A72及四核Cortex-A53组合架构,主要应用于计算机、个人互联网移动设备、VR、广告机等智能终端设备。RK3399内置多个高性能硬件处理引擎,能够支持多种格式的视频解码,如:4K*2K@60fps H.264/H.265/VP9,也支持1080P@30fps的H.264/MVC/VP8 以及高质量的JPEG编解码和图像的前后处理器。

 

 

  1. dlt3399a上有6个gpio控制节点(板卡正面GPIO丝印):

高电平为3.0V:

"/dev/gpio4_c5"

"/dev/gpio4_c6"

"/dev/gpio4_d5"

"/dev/gpio4_d6"

高电平为1.8V:

"/dev/gpio1_b1"

"/dev/gpio1_b2"

 

读写方法:

(1)使用read函数读gpio输入状态:

读取到数值 1,代表输入为高电平;

读取到数值 0,代表输入为低电平;

(2)使用write函数控制gpio输出:

写入'1',代表gpio输出高电平;

写入'0',代表gpio输出低电平;

 

  1. 测试用例

#include <stdio.h>

#include <unistd.h>

#include <fcntl.h>

#include <stdlib.h>

#include <string.h>

#include <errno.h>

#include <sys/types.h>

int main (void)

{

    int  fd;

    char gpio_in = -1;

    char gpio_out='0';

fd = open ("/dev/gpio4_c5", O_RDWR); //打开设备节点

if (fd < 0)

    exit(0);     

        /* read */

    read (fd, &gpio_in, sizeof(char)); //读取GPIO输入状态

    printf("gpio_in value = %d\n", gpio_in);

/* write */

    printf("gpio_out value: %d\n", gpio_out);

    if (write(fd, &gpio_out, sizeof(char)) < 0) //输出GPIO状态

    {

        perror("fail to write");

    }

    close (fd);

    return 0;

}

 

猜你喜欢

转载自blog.csdn.net/candy19912015/article/details/88944638
今日推荐