Skip to content
Snippets Groups Projects
Select Git revision
  • e78e0fd224d17e8bb1af565518aa283bfebc6dcf
  • master default protected
  • L2SS-1914-fix_job_dispatch
  • TMSS-3170
  • TMSS-3167
  • TMSS-3161
  • TMSS-3158-Front-End-Only-Allow-Changing-Again
  • TMSS-3133
  • TMSS-3319-Fix-Templates
  • test-fix-deploy
  • TMSS-3134
  • TMSS-2872
  • defer-state
  • add-custom-monitoring-points
  • TMSS-3101-Front-End-Only
  • TMSS-984-choices
  • SDC-1400-Front-End-Only
  • TMSS-3079-PII
  • TMSS-2936
  • check-for-max-244-subbands
  • TMSS-2927---Front-End-Only-PXII
  • Before-Remove-TMSS
  • LOFAR-Release-4_4_318 protected
  • LOFAR-Release-4_4_317 protected
  • LOFAR-Release-4_4_316 protected
  • LOFAR-Release-4_4_315 protected
  • LOFAR-Release-4_4_314 protected
  • LOFAR-Release-4_4_313 protected
  • LOFAR-Release-4_4_312 protected
  • LOFAR-Release-4_4_311 protected
  • LOFAR-Release-4_4_310 protected
  • LOFAR-Release-4_4_309 protected
  • LOFAR-Release-4_4_308 protected
  • LOFAR-Release-4_4_307 protected
  • LOFAR-Release-4_4_306 protected
  • LOFAR-Release-4_4_304 protected
  • LOFAR-Release-4_4_303 protected
  • LOFAR-Release-4_4_302 protected
  • LOFAR-Release-4_4_301 protected
  • LOFAR-Release-4_4_300 protected
  • LOFAR-Release-4_4_299 protected
41 results

isStatusData.py

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    SPIbitbang2.py 2.12 KiB
    from I2Cdevices import *;
    import numpy as np
    
    class SPIbitbang2(I2Cdevices):
        def I2CSet(self,dev,reg,value,I2Ccallback,width=8,bitoffset=0):
              SPI=Find(self.D['I2C_devices'],'dev_name',dev)
              Reg=Find(SPI['dev_registers'],'reg_name',reg)  
              reg_address=Reg['reg_addr']
              SetBit=I2Ccallback
    
    #          dev_rw    = 0x00 # 0 for write, 1 for read
    #          data2 =  ( reg_address << 9 ) + ( dev_rw << 8 ) + value[0]
              data2 =  ( reg_address << 9 ) + value[0]
              
              bit_array = "{0:{fill}16b}".format(data2, fill='0')
          #    print(bit_array)
              SetBit('CS',0) #enable
              for bit in bit_array:
                  SetBit('SDI',int(bit)) 
                  SetBit('CLK',1) 
                  SetBit('CLK',0) 
              SetBit('CS',1) 
              return True;
              
    
        def I2CGet(self,dev,reg,value,I2Ccallback,width=8,bitoffset=0):
              
              SPI=Find(self.D['I2C_devices'],'dev_name',dev)
              Reg=Find(SPI['dev_registers'],'reg_name',reg)  
              reg_address=Reg['reg_addr']
    #          print(ADC_reg_address,CS,SDIOdir,SDI,SDO,CLK)
              SetBit=I2Ccallback
              ADC_bytes = 0x00
    
    #          ADC_rw    = 0x01 # 0 for write, 1 for read
              data =  ( reg_address << 7 ) +  1
            
              SetBit('CS',0) #enable
    
              bit_array = "{0:{fill}8b}".format(data, fill='0')
              for bit in bit_array:
                  SetBit('SDI',int(bit))
                  SetBit('CLK',1)
                  SetBit('CLK',0)
    
    #          SetBit('CS',1) #disable
    
              #    print("read byte")
    #          SetBit('SDIOdir',1) #inpute
    #          SetBit('CS',0) #enable
              a=[0]
              read_bit = ''
              for cnt in range(8*(ADC_bytes+1)):
                  ret_value=SetBit('SDO',0,True)
                  read_bit += str(ret_value)
                  SetBit('CLK',1)
                  SetBit('CLK',0) #read after falling edge
              SetBit('CS',1) #disable
    #          SetBit(SDO,1) 
    #          SetBit(CLK,1) 
    #          print(read_bit)
              stri = "Read back data is: {0:2x} ".format(int(read_bit, 2))
              print(stri)
              value[0]=int(read_bit, 2)
              return True;