Files
sea/tcl/drivers/el755.tcl
2022-08-18 15:04:28 +02:00

52 lines
862 B
Tcl

namespace eval el755 {} {
}
proc stdConfig::el755 {} {
controller std
prop startcmd "RMT 1"
pollperiod 1 1
obj EL755 -drive wr
prop status idle
prop start 0
prop checklimits el755::checklimits
prop read el755::read
prop write el755::write
kids EL755 {
node upperlimit par 18
node lowerlimit par -18
}
}
proc el755::read {} {
sct send "I 5"
return el755::update
}
proc el755::write {} {
sct send "I 5 [sct target]"
return stdSct::complete
}
proc el755::update {} {
sct update [sct result]
return idle
}
proc el755::checklimits {} {
if {[sct target] > [hval [sct]/upperlimit] ||
[sct target] < [hval [sct]/lowerlimit]} {
error "outside limits"
}
[sct controller] poll [sct] 2 read el755::wait [expr [DoubleTime] + 2]
sct status run
}
proc el755::wait {} {
sct status idle
return unpoll
}