コード例 #1
0
def gpio_getdir(*args, regulator=ddr, **kwargs):
    gpio_op(SCA_OP_MODE['gpio_getdir'], *args, **kwargs)
    ret = pydim.dic_sync_info_service(
        '{}/{}/SrvcGPIORead'.format(GBT_PREF, GBT_SERV),
        'I:1;C'
    )
    return int(dim_dic_err(regulator(ret), GPIO_ERR_CODE), base=16)
コード例 #2
0
def gpio_write(*args, regulator=ddr, **kwargs):
    gpio_op(SCA_OP_MODE['write'], *args, **kwargs)
    ret = pydim.dic_sync_info_service(
        '{}/{}/SrvcGPIOWrite'.format(GBT_PREF, GBT_SERV),
        'I:1'
    )
    return dim_dic_err(regulator(ret), GPIO_ERR_CODE)
コード例 #3
0
def i2c_writeread(*args, regulator=ddr, **kwargs):
    # FIXME: The operation order doesn't make sense.
    i2c_op(SCA_OP_MODE['writeread'], *args, **kwargs)
    pydim.dic_sync_info_service('{}/{}/SrvcI2CRead'.format(GBT_PREF, GBT_SERV),
                                'I:1;C')
    ret = pydim.dic_sync_info_service(
        '{}/{}/SrvcI2CRead'.format(GBT_PREF, GBT_SERV), 'I:1;C')
    return dim_dic_err(regulator(ret), I2C_ERR_CODE)
コード例 #4
0
ファイル: fpga_reg.py プロジェクト: umd-lhcb/nanoDAQ
def mem_mon_options_read(tell40=TELL40, regulator=ddr):
    ret = pydim.dic_sync_cmnd_service(
        '{}/{}/CmndOperation/{}.top_tell40.monitoring_options'.format(
            GBT_PREF, GBT_SERV, tell40), (FPGA_REG_OP_MODE['read'], '0'),
        'C:1;C')
    dim_cmd_err(ret)

    ret = pydim.dic_sync_info_service(
        '{}/{}/SrvcReadings/{}.top_tell40.monitoring_options'.format(
            GBT_PREF, GBT_SERV, tell40), 'I:1;C')
    return dim_dic_err(regulator(ret), FPGA_REG_ERR_CODE)