GPIO口控制

在DLT3399A板卡正面写有GPIO和UART4_1V8丝印的接口,并看到板子反面对应的引脚gpio丝印,选择相对应的gpio控制节点,接口位置如下图所示:

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输出低电平;

2、测试用例

#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;

}

 串口(TTL)

串口接口位置如下图所示:

设备节点:”/dev/ttyS4”

串口自测方法:短接UART4_RX和UART4_TX两个管脚(可看板卡丝印),Android系统中打开ComAssistant串口软件,采用自发自收的测试方式,发的内容是能正确的接收回来显示,说明数据通信正常;

三 散热风扇控制接口

风扇接口位置如果所示:

1、系统自动控制:读取CPU温度,如果CPU温度超过60℃,散热风扇接口会输出12V电压,开启风扇。温度低于40℃以下,散热风扇接口会关闭风扇。

2、如果客户需要控制风扇的开启和关闭,方法如下:

温度获取节点:”/sys/devices/virtual/thermal/thermal_zone0/temp”

如果读取的到的温度值为:48750,换算温度为48750/1000=48.75℃;

控制散热风扇开启和关闭的控制节点:”/dev/fan”

使用write函数控制gpio输出:

写入’1’,代表开启散热风扇;

写入’0’,代表关闭散热风扇;

写入’2’,  代表客户不进行控制,用底层默认自动控制;

测试代码用例,可参考GPIO口控制测试用例;

宁远电子瑞芯微RK3399开发板DLT3399A底层接口调用的更多相关文章

  1. 瑞芯微RK3399六核-迅为3399开发板介绍

    迅为3399开发板基于瑞芯微的RK3399处理器设计,Rockchip RK3399是瑞芯微推出的一款低功耗.高性能的应用处理器芯片,该芯片基于Big.Little架构,即具有独立的NEON协同处理器 ...

  2. 瑞芯微RK3399宣布系统开源,进入百余种行业市场!

    集微网消息,2月24日瑞芯微官方突然宣布, Rockchip RK3399Linux系统开源!作为Rockchip旗舰级芯片,RK3399具有高性能.高扩展.全能型应用特性. 这一重磅消息立马刷爆朋友 ...

  3. NanoPC-T4/RK3399开发板Ubuntu FriendlyCore系统开机自动运行客户程序

    RK3399开机自动运行客户程序 比如hellohello.c 交叉编译:aarch64-linux-gcc hello.c -o hello使用SecureCRT软件通过串口下载到开发板rz修改文件 ...

  4. 瑞芯微ROCK960 RK3399固件烧录总结

    1 下载固件 进入瑞芯微ROCK960下载主页 https://www.96boards.org/documentation/consumer/rock/downloads/ 选择os固件, Debi ...

  5. 瑞芯微ROCK960 RK3399烧录image后扩容rootfs

    问题描述: RK3399开发板烧录官网提供的ubuntu镜像: Ubuntu 16.04 Server arm64(下载地址:https://www.96boards.org/documentatio ...

  6. Linux下更新瑞芯微固件

    有这样的需求,是因为提供的BSP中是在windows下烧写的系统.我直接在linux下开发,每次编译后代码都要在windows下烧写,是一个很麻烦的事情.为了解决这个问题我尝试着用VirtualBox ...

  7. 9.7寸RK3188瑞芯微四核爱立顺M33平板电脑 - 深圳吉祥星晨科技有限公司 - 华强商情网

    9.7寸RK3188瑞芯微四核爱立顺M33平板电脑 - 深圳吉祥星晨科技有限公司 - 华强商情网 欢迎加入 2000人超级QQ群,平板电脑行业交流群:221371451,平板电脑产品及报价群:5765 ...

  8. 瑞芯微发布最新旗舰应用处理器-RK3588

    在瑞芯微电子第四届“开发者之春”大会上,瑞芯微推出了新一代8nm旗舰处理器-RK3588 这个芯片将采用8nm 制程工艺.基于A76+A55 内核组合,具备4K UI性能.8K VPU,拥有NPU2. ...

  9. 芯灵思SinlinxA33开发板Linux内核定时器编程

    开发平台 * 芯灵思SinlinxA33开发板 淘宝店铺: https://sinlinx.taobao.com/ 嵌入式linux 开发板交流 QQ:641395230 Linux 内核定时器是内核 ...

随机推荐

  1. 7月18日刷题记录 二分答案跳石头游戏Getting

    通过数:1 明天就要暑假编程集训啦~莫名开心 今天做出了一道 二分答案题(好艰辛鸭) 1049: B13-二分-跳石头游戏(二分答案) 时间限制: 5 Sec  内存限制: 256 MB提交: 30  ...

  2. 数据库触发器_trigger

    部门表_删除: USE [test] GO /****** Object: Trigger [dbo].[部门_Delete] Script Date: 2015/8/31 16:41:46 **** ...

  3. SSH框架,xml配置实现动态定时器

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-// ...

  4. C#3.0新增功能10 表达式树 07 翻译(转换)表达式

    连载目录    [已更新最新开发文章,点击查看详细] 本篇将介绍如何访问表达式树中的每个节点,同时生成该表达式树的已修改副本. 以下是在两个重要方案中将使用的技巧. 第一种是了解表达式树表示的算法,以 ...

  5. [PTA] 数据结构与算法题目集 6-10 二分查找

    Position BinarySearch(List L, ElementType X) { int beg = 1; int end = L->Last; while (beg <= e ...

  6. [leetcode] 72. Edit Distance (hard)

    原题 dp 利用二维数组dp[i][j]存储状态: 从字符串A的0~i位子字符串 到 字符串B的0~j位子字符串,最少需要几步.(每一次删增改都算1步) 所以可得边界状态dp[i][0]=i,dp[0 ...

  7. 关于tomcat-startup.bat启动失败或者一闪而过问题解决记录

    一.前言 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说 ...

  8. springboot启动不设置端口

    非web工程 在服务架构中,有些springboot工程只是简单的作为服务,并不提供web服务 这个时候不需要依赖 <dependency> <groupId>org.spri ...

  9. Vue的基本使用(一)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. phpcms V9 常用的调用标签

    本文介绍phpcms v9中模板标签使用说明. >>调用根目录下phpcms\template\content\header文件 {template "content" ...