# This is the channel HV IMON register 0x1n44 # n=2 & 3 if {$Name == "V1724PHA"} {return} variable NumChans variable HV_IMON_RES 100 variable HV_IMON_MAX 400 for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.HVIMON 0 } proc GetHVIMON {} { variable NumChans variable HV_IMON_RES for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.HVIMON set Ch$i.HVIMON [expr [ReadRegister Ch$i.HV_IMON] / $HV_IMON_RES] } } proc SetHVIMON {w} { variable NumChans variable HV_IMON_RES for {set i 0} {$i < $NumChans} {incr i} { if {$w < $NumChans && $w != $i} {continue} variable Ch$i.HVIMON WriteRegister Ch$i.HV_IMON [expr [set Ch$i.HVIMON] * $HV_IMON_RES] } } proc SaveHVIMON {} { variable NumChans variable HV_IMON_RES for {set i 0} {$i < $NumChans} {incr i} { DBSetValue Ch$i.HVIMON [expr [ReadRegister Ch$i.HV_IMON] / $HV_IMON_RES] } } proc RestHVIMON {} { variable NumChans variable HV_IMON_RES for {set i 0} {$i < $NumChans} {incr i} { variable Ch$i.HVIMON set Ch$i.HVIMON [DBGetValue Ch$i.HVIMON] WriteRegister Ch$i.HV_IMON [expr [set Ch$i.HVIMON] * $HV_IMON_RES] } } proc DrawHVIMON {} { variable NumChans variable Name variable HV_IMON_MAX set html "" append html "
" append html "
| Channel | " append html "Channel n HV IMON (uAmps) | " append html "
| $i | " append html "" append html " |