added some error checks
This commit is contained in:
parent
e3c958cf65
commit
545b9420d5
1 changed files with 25 additions and 3 deletions
28
demo/tut2.c
28
demo/tut2.c
|
@ -16,6 +16,7 @@ int subdev = 0; /* change this to your input subdevice */
|
|||
int chan = 0; /* change this to your channel */
|
||||
int range = 0; /* more on this later */
|
||||
int aref = AREF_GROUND; /* more on this later */
|
||||
const char filename[] = "/dev/comedi0";
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
|
@ -24,11 +25,32 @@ int main(int argc, char *argv[])
|
|||
int maxdata;
|
||||
double volts;
|
||||
comedi_range *cr;
|
||||
|
||||
cf = comedi_open("/dev/comedi0");
|
||||
int retval;
|
||||
|
||||
cf = comedi_open(filename);
|
||||
if(cf == NULL)
|
||||
{
|
||||
comedi_perror(filename);
|
||||
return 1;
|
||||
}
|
||||
maxdata = comedi_get_maxdata(cf, subdev, chan);
|
||||
if(maxdata == 0)
|
||||
{
|
||||
comedi_perror(filename);
|
||||
return 1;
|
||||
}
|
||||
cr = comedi_get_range(cf, subdev, chan, range);
|
||||
comedi_data_read(cf, subdev, chan, range, aref, &data);
|
||||
if(cr == NULL)
|
||||
{
|
||||
comedi_perror(filename);
|
||||
return 1;
|
||||
}
|
||||
retval = comedi_data_read(cf, subdev, chan, range, aref, &data);
|
||||
if(retval < 0)
|
||||
{
|
||||
comedi_perror(filename);
|
||||
return 1;
|
||||
}
|
||||
volts = comedi_to_phys(data, cr, maxdata);
|
||||
printf("%d %g\n", data, volts);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue