irqtest_user.c

来自「用gpio9作中断」· C语言 代码 · 共 48 行

C
48
字号
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <sys/time.h>
#include <fcntl.h>
#include <unistd.h>

#define IRQTEST_IOC_MAGIC 'F'
#define START_IRQTEST               _IO(IRQTEST_IOC_MAGIC,0)
#define STOP_IRQTEST                _IO(IRQTEST_IOC_MAGIC,1)

 int main(int argc,char *argv[])
{
   int fd;
   printf("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n");
   if((fd = open("/dev/irqtest",O_RDONLY)) < 0)
  	{
    	printf("Error: irqtest device cann't be opened!\n");
    	return 0;
  	}
    else
    printf("open irqtest device successful\n");
    
    if(ioctl(fd,START_IRQTEST))
        printf("ioctl error\n");
    else
        printf("start IRQTEST successful\n");
    
    while(1)
     {
     	printf("q or Q to quit:>");
     	c=getchar();
     	putchar(c);
     	if((c=='q')||c=='Q')
     	break;
     	printf("\n");
     }	
    if(ioctl(fd,STOP_IRQTEST))
        printf("ioctl error\n");
    else
        printf("stop IRQTEST\n");
  close(fd);
  printf("close irqtest device\n");
  return 1;
}

⌨️ 快捷键说明

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