⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gpio_test.c

📁 arm linux s3c2410 led驱动例程
💻 C
字号:
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
#include <asm/delay.h>
#include "gpio.h"

delay(int s) {
    int i;
    for (; s > 0; s--) {
        for (i = 2000000; i > 0; i--);
    }
}

int main(void) {
    int fd;
    int tmp;
    char status;
    fd = open("/dev/gpio", O_RDWR);
    if (fd < 0) {
        printf("Open gpio driver error\n");
        return -1;
    }
    printf("Open gpio driver ok\n");
    tmp = 0x05;
    write(fd, &tmp, 1); //led1 and led3 on
    delay(1);
    tmp = 0x0a;
    write(fd, &tmp, 1); //led2 and led4 on
    delay(1);
    tmp = 0x00;
    write(fd, &tmp, 1); //all off
    delay(1);
    tmp = 0x0f;
    write(fd, &tmp, 1); //all on
    delay(1);
    while (1) {
        int i;
        int j;
        int fix_cha = 5000;
        while (1) {
            for (j = 0; j < fix_cha; j++) {
                ioctl(fd, all_on, 0);
                for (i = j; i > 0; i--);
                ioctl(fd, all_off, 0);
                for (i=0 ; i<fix_cha-j; i++);
            }
            for (j=0; j <fix_cha; j++) {
                ioctl(fd, all_off, 0);
                for (i=j; i>0; i--);
                ioctl(fd, all_on, 0);
                for (i=0 ; i<fix_cha-j; i++);
            }
        }
    }
    close(fd);
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -