Ejemplo n.º 1
0
def main():
  print "--------------------------- CTPDIM connecting..."
  ctp= pydim_ex.DimServerCtp()
  if ctp.tag==0:
    ctp.errprt("exiting...") ; return 
  else:
    print "ctpdims ok"
  ctp=None;
  ltus= trigdb.readVALIDLTUS()
  for ltu in ltus:
    if ltu.fo!=0:   #connected LTU
      ltulower= ltu.name.lower()
      ltuon(ltulower)
Ejemplo n.º 2
0
def main():
  print "--------------------------- CTPDIM connecting..."
  ctp= pydim_ex.DimServerCtp()
  if ctp.tag==0:
    ctp.errprt("exiting...") ; return 
  phases={}
  fos_phases=[]
  for ix in (1,2,3,4,5,6):
    fos_phases.append(fout())
  #measure busy L0/1/2 INT:
  answer=ctp.execDO("CHECKPHASES")
  print "ctp:BUSY L0/1/2 INT phases:>%s<"%answer
  #
  #ltu_phase= measureFOLTU(ctp, "hmpid")
  #return
  ps= string.split(answer);
  if len(ps) != 5:
    ctp.errprt("Bad ctp answer:%s"%answer) ; return 
  phases['busy']= int(ps[0]); phases['l0']= int(ps[1])
  phases['l1']= int(ps[2]); phases['l2']= int(ps[3])
  phases['int']= int(ps[4])
  ltus= trigdb.readVALIDLTUS()
  for ltu in ltus:
    if ltu.fo!=0:   #connected LTU
      ltulower= ltu.name.lower()
      ps= measureFOLTU(ctp, ltulower)
      if ps==None: continue
      phases[ltulower]= ps[0] 
      #fo:
      fos_phases[ltu.fo-1].phases[ltu.focon-1]= ps[1]
  #for ix in range(100):
  #  answer=proxy.execDO("vmeopr32(VERSION_ADD)\n")
  #close connection:
  ctp=None;
  print "CTP and LTU boards (except FOs) phases:"
  print phases
  print "CTP FO boards phases (each FO connector measured independently with its LTU):"
  for ix in (1,2,3,4,5,6):
    print ix,':',fos_phases[ix-1].prt()