def get_value(self, addr, size, offset, **kwargs):
        '''Reading a value of any arbitrary size (max. unsigned int 64) and offset from a register

        Parameters
        ----------
        addr : int
            The register address.
        size : int
            Bit size/length of the value.
        offset : int
            Offset of the value to be written to the register (in number of bits).

        Returns
        -------
        reg : int
            Register value.
        '''
        div_offset, mod_offset = divmod(offset, 8)
        div_size, mod_size = divmod(size + mod_offset, 8)
        if mod_size:
            div_size += 1
        ret = self._intf.read(self._base_addr + addr + div_offset, size=div_size)
        reg = BitLogic()
        reg.frombytes(tobytes(ret))
        return reg[size + mod_offset - 1:mod_offset].tovalue()
def get_value ( self , addr , size , offset , ** kwargs ) : div_offset , mod_offset = divmod ( offset , 8 ) div_size , mod_size = divmod ( size + mod_offset , 8 ) if mod_size : div_size += 1 ret = self . _intf . read ( self . _base_addr + addr + div_offset , size = div_size ) reg = BitLogic ( ) reg . frombytes ( tobytes ( ret ) ) return reg [ size + mod_offset - 1 : mod_offset ] . tovalue ( )
Reading a value of any arbitrary size (max. unsigned int 64) and offset from a register

        Parameters
        ----------
        addr : int
            The register address.
        size : int
            Bit size/length of the value.
        offset : int
            Offset of the value to be written to the register (in number of bits).

        Returns
        -------
        reg : int
            Register value.