Perl demos moved from perl/ directory
authorDavid Schleef <ds@schleef.org>
Tue, 10 Jul 2001 22:28:06 +0000 (22:28 +0000)
committerDavid Schleef <ds@schleef.org>
Tue, 10 Jul 2001 22:28:06 +0000 (22:28 +0000)
demo/perl/info.perl [new file with mode: 0755]
demo/perl/inp.pl [new file with mode: 0755]

diff --git a/demo/perl/info.perl b/demo/perl/info.perl
new file mode 100755 (executable)
index 0000000..093ae32
--- /dev/null
@@ -0,0 +1,45 @@
+#!/usr/bin/perl
+
+use Comedi qw( :SubdeviceTypes );
+use Comedi::Lib;
+
+sub help {
+    print STDERR "info </dev/comediN>\n";
+    exit(0);
+}
+
+%subdevice_types = (
+    COMEDI_SUBD_UNUSED,  'unused',
+    COMEDI_SUBD_AI,      'analog input',
+    COMEDI_SUBD_AO,      'analog output',
+    COMEDI_SUBD_DI,      'digital input',
+    COMEDI_SUBD_DO,      'digital output',
+    COMEDI_SUBD_DIO,     'digital I/O',
+    COMEDI_SUBD_COUNTER, 'counter',
+    COMEDI_SUBD_TIMER,   'timer',
+    COMEDI_SUBD_MEMORY,  'memory',
+    COMEDI_SUBD_CALIB,   'calibration',
+    COMEDI_SUBD_PROC,    'processor',
+);
+
+#
+# Main Program
+#
+
+help() if (@ARGV != 1);
+
+$it = comedi_open($ARGV[0]) || die "cannot open $ARGV[0]: $!";
+
+printf("overall info:\n");
+printf("  version code: %d.%d.%d (0x%06x)\n", comedi_get_version($it), comedi_get_version_code($it));
+printf("  driver name: %s\n", comedi_get_driver_name($it));
+printf("  board name: %s\n", comedi_get_board_name($it));
+printf("  number of subdevices: %d\n", $n_subdevices = comedi_get_n_subdevices($it));
+
+for ($i = 0; $i < $n_subdevices; $i++) {
+    printf("subdevice %d:\n", $i);
+    $type = comedi_get_subdevice_type($it, $i);
+    printf("  type: %d (%s)\n", $type, $subdevice_types{$type});
+    printf("  number of channels: %d\n", comedi_get_n_channels($it, $i));
+    printf("  max data value: %d\n", comedi_get_maxdata($it, $i, 0));
+}
diff --git a/demo/perl/inp.pl b/demo/perl/inp.pl
new file mode 100755 (executable)
index 0000000..d838a0b
--- /dev/null
@@ -0,0 +1,2 @@
+#!/usr/bin/perl
+