comedilib/demo/main.c

78 lines
1.1 KiB
C
Raw Normal View History

2000-02-02 05:14:23 +00:00
/*
*/
#include <stdio.h>
#include <comedilib.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <errno.h>
#include <getopt.h>
#include <ctype.h>
#include <malloc.h>
char *filename="/dev/comedi0";
int verbose_flag;
comedi_t *device;
int value;
int subdevice;
int channel;
int aref;
int range;
int parse_options(int argc, char *argv[])
{
int c;
2000-05-27 00:55:34 +00:00
while (-1 != (c = getopt(argc, argv, "a:c:s:r:f:vdgom"))) {
2000-02-02 05:14:23 +00:00
switch (c) {
case 'f':
2000-05-27 00:55:34 +00:00
filename = optarg;
2000-02-02 05:14:23 +00:00
break;
case 's':
2000-05-27 00:55:34 +00:00
sscanf(optarg,"%d",&subdevice);
2000-02-02 05:14:23 +00:00
break;
case 'c':
2000-05-27 00:55:34 +00:00
sscanf(optarg,"%d",&channel);
2000-02-02 05:14:23 +00:00
break;
case 'a':
2000-05-27 00:55:34 +00:00
sscanf(optarg,"%d",&aref);
2000-02-02 05:14:23 +00:00
break;
case 'r':
2000-05-27 00:55:34 +00:00
sscanf(optarg,"%d",&range);
2000-02-02 05:14:23 +00:00
break;
case 'v':
verbose_flag = 1;
break;
case 'd':
aref=AREF_DIFF;
break;
case 'g':
aref=AREF_GROUND;
break;
case 'o':
aref=AREF_OTHER;
break;
case 'm':
aref=AREF_COMMON;
break;
default:
printf("bad option\n");
exit(1);
}
}
2000-05-27 00:55:34 +00:00
if(optind < argc) {
/* data value */
sscanf(argv[optind++],"%d",&value);
}
2000-02-02 05:14:23 +00:00
return argc;
}