系统相关
首页 > 系统相关> > 【北京迅为】i.MX6ULL终结者Linux LED实验编写应用测试程序

【北京迅为】i.MX6ULL终结者Linux LED实验编写应用测试程序

作者:互联网

创建应用测试程序gpioled_test.c,内容如下:

#include "stdio.h"
#include "unistd.h"
#include "sys/types.h"
#include "sys/stat.h"
#include "fcntl.h"
#include "stdlib.h"
#include "string.h"
 
#define LEDOFF 0
#define LEDON 1
 
/*
 * @description : main 主程序
 * @param - argc : argv 数组元素个数
 * @param - argv : 具体参数
 * @return : 0 成功;其他 失败
 */
int main(int argc, char *argv[])
{
        int fd, retvalue;
        char *filename;
        unsigned char databuf[1];
 
        if(argc != 3){
                printf("Error Usage!\r\n");
                return -1;
        }
 
        filename = argv[1];
 
        /* 打开 led 驱动 */
        fd = open(filename, O_RDWR);
        if(fd < 0){
                printf("file %s open failed!\r\n", argv[1]);
                return -1;
        }
 
        databuf[0] = atoi(argv[2]); /* 要执行的操作:打开或关闭 */
 
        /* 向/dev/led 文件写入数据 */
        retvalue = write(fd, databuf, sizeof(databuf));
        if(retvalue < 0){
                printf("LED Control Failed!\r\n");
                close(fd);
                return -1;
        }
        retvalue = close(fd); /* 关闭文件 */
        if(retvalue < 0){
                printf("file %s close failed!\r\n", argv[1]);
                return -1;
        }
        return 0;
}

gpioled_test.c应用测试程序还是比较简单的,就是对LED驱动的打开、关闭、写操作,在运行程序时需要指定设备文件名称和要执行的操作。在这里插入图片描述

标签:databuf,return,argv,fd,测试程序,迅为,LED,include,retvalue
来源: https://blog.csdn.net/BeiJingXunWei/article/details/110259232