
Better exception handling. More consistent handling of return values. Updated documentation.
34 lines
536 B
Ruby
Executable file
34 lines
536 B
Ruby
Executable file
#!/usr/bin/env ruby
|
|
|
|
require 'comedi'
|
|
require 'getoptlong'
|
|
require 'common'
|
|
|
|
include Comedi
|
|
|
|
parse_options
|
|
|
|
begin
|
|
dev = Comedi::open($filename)
|
|
rescue
|
|
comedi_perror($filename)
|
|
exit 1
|
|
end
|
|
|
|
data = $value
|
|
|
|
if $verbose
|
|
print "writing #{$value} to device=#{$filename} subdevice=#{$subdevice}"
|
|
print " channel=#{$channel} range=#{$range}"
|
|
print " analog reference=#{$aref}\n"
|
|
end
|
|
|
|
begin
|
|
dev.data_write($subdevice, $channel, $range, $aref, data)
|
|
rescue
|
|
comedi_perror($filename)
|
|
exit 1
|
|
end
|
|
puts data
|
|
|
|
exit 0
|
|
|