def create_ltc2378_dbg(meter_dev, bus_dev, audio_dev, adc_volt_range): ltc2378_dbg = LTC2378Debuger() if meter_dev == '': meter_bus = None else: if utility.is_pl_device(meter_dev): axi4_bus = AXI4LiteBus(meter_dev, 1024) meter_bus = MIXSignalMeterSG(axi4_bus) else: meter_bus = MIXSignalMeterSG(meter_dev) if bus_dev == '': spi_adc_bus = None else: if utility.is_pl_device(bus_dev): adc_bus = AXI4LiteBus(bus_dev, 256) spi_adc_bus = PLSPIADC(adc_bus) else: spi_adc_bus = PLSPIADC(adc_bus) if audio_dev == '': audio_bus = None else: if utility.is_pl_device(audio_dev): axi4_bus = AXI4LiteBus(audio_dev, 65536) audio_bus = MIXFftAnalyzerSG(axi4_bus) else: audio_bus = MIXFftAnalyzerSG(axi4_bus) ltc2378_dbg.ltc2378 = LTC2378( meter_bus, spi_adc_bus, audio_bus, adc_volt_range) return ltc2378_dbg
def create_mixboard_dbg(eeprom_addr, eeprom_bus_name, nct_addr, nct_bus_name, cal_table, range_table): mixboard_dbg = MIXBoardDebuger() if eeprom_bus_name == "": eeprom = None else: if utility.is_pl_device(eeprom_bus_name): axi4_bus = AXI4LiteBus(eeprom_bus_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(eeprom_bus_name) eeprom = AT24C08(eeprom_addr, i2c_bus) if nct_bus_name == "": nct = None else: if utility.is_pl_device(nct_bus_name): axi4_bus = AXI4LiteBus(nct_bus_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(nct_bus_name) nct = NCT75(nct_addr, nct_bus_name) mixboard_dbg._mix = MIXBoard(eeprom, nct, cal_table, range_table) return mixboard_dbg
def create_sgmoduledriver_dbg(eeprom_addr, eeprom_bus_name, nct_addr, nct_bus_name, range_table): sgmoduledriver_dbg = SGModuleDriverDebuger() if eeprom_bus_name == "": eeprom = None else: if utility.is_pl_device(eeprom_bus_name): axi4_bus = AXI4LiteBus(eeprom_bus_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(eeprom_bus_name) eeprom = AT24C08(eeprom_addr, i2c_bus) if nct_bus_name == "": nct = None else: if utility.is_pl_device(nct_bus_name): axi4_bus = AXI4LiteBus(nct_bus_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(nct_bus_name) nct = NCT75(nct_addr, nct_bus_name) sgmoduledriver_dbg._mix = SGModuleDriver(eeprom, nct, range_table) return sgmoduledriver_dbg
def create_uel001003a_dbg(i2c_bus_name, spi_bus_name, gpio_device_name, switch_pin_id): uel001003a_dbg = UEL001003ADebuger() if i2c_bus_name == '': i2c_bus = None else: if utility.is_pl_device(i2c_bus_name): axi4_bus = AXI4LiteBus(i2c_bus_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_bus_name) if spi_bus_name == '': spi_bus_name = None else: axi4_bus = AXI4LiteBus(spi_bus_name, 8192) spi_bus = MIXQSPISG(axi4_bus) if gpio_device_name == '': gpio_switch = GPIO(int(switch_pin_id), "output") else: axi4_bus = AXI4LiteBus(gpio_device_name, 256) gpio = MIXGPIOSG(axi4_bus) gpio_switch = Pin(gpio, int(switch_pin_id)) uel001003a_dbg.uel001003a = UEL001003A(i2c=i2c_bus, spi=spi_bus, gpio_switch=gpio_switch) return uel001003a_dbg
def create_bus(dev_name, bus_type): if dev_name == '': return None if bus_type == 'i2c': if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) bus = MIXI2CSG(axi4_bus) else: bus = I2C(dev_name) elif bus_type == 'spi': if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLSPIDef.REG_SIZE) bus = MIXQSPISG(axi4_bus) else: raise NotImplementedError('PS SPI not implement yet!') return bus
def create_bus(dev_name): if dev_name == '': return None if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) return i2c_bus
def create_ad5781_dbg(dev_name, mvref_p, mvref_n): ad5781_dbg = AD5781Debuger() if dev_name == '': spi_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLSPIDef.REG_SIZE) spi_bus = MIXQSPISG(axi4_bus) ad5781_dbg.ad5781 = AD5781(mvref_p, mvref_n, spi_bus) return ad5781_dbg
def create_sg2251pw01pca_dbg(ip_name, signal_source_name, io_name, pin, i2c_name): sg2251pw01pca_dbg = None if utility.is_pl_device(i2c_name): axi4_bus = AXI4LiteBus(i2c_name, 256) i2c = PLI2CBus(axi4_bus) else: i2c = I2C(i2c_name) sg2251pw01pca_dbg.sg2251pw01pca = SG2251PW01PCA(i2c) return sg2251pw01pca_dbg
def create_gpio_dbg(dev_name, reg_size): gpio_dbg = MIXGPIOSGDebuger() if dev_name == '': gpio_dbg.gpio = MIXGPIOSGEmulator(dev_name, reg_size) else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, reg_size) else: raise NotImplementedError('PS gpio not implement yet!') gpio_dbg.gpio = MIXGPIOSG(axi4_bus) return gpio_dbg
def create_bus(dev_name): if dev_name == '': return None if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, 256) bus = MIXQSPISG(axi4_bus) bus.mode = 'MODE2' else: raise NotImplementedError('PS SPI not implement yet!') return bus
def create_bh1750_dbg(dev_name, dev_addr): bh1750_dbg = BH1750Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) bh1750_dbg.bh1750 = BH1750(dev_addr, i2c_bus) return bh1750_dbg
def create_tmp108_dbg(dev_name, dev_addr): tmp108_dbg = TMP108Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) tmp108_dbg.tmp108 = TMP108(dev_addr, i2c_bus) return tmp108_dbg
def create_sn65_dbg(dev_name, dev_addr): sn65dbg = SN65DSI86Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) sn65dbg.sn65dsi86 = SN65DSI86(dev_addr, i2c_bus) return sn65dbg
def create_mcp4725_dbg(dev_name, device_address): mcp4725_dbg = MCP4725Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) mcp4725_dbg.mcp4725 = MCP4725(device_address, i2c_bus) return mcp4725_dbg
def create_ad5693_dbg(dev_name, dev_addr): ad5693_dbg = AD5693Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) ad5693_dbg.ad5693 = AD5693(dev_addr, i2c_bus) return ad5693_dbg
def create_pcal6524_dbg(dev_name, device_address): pcal6524_dbg = PCAL6524Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = PLI2CBus(axi4_bus) else: i2c_bus = I2C(dev_name) pcal6524_dbg.pcal6524 = PCAL6524(device_address, i2c_bus) return pcal6524_dbg
def create_max6642_dbg(dev_name, dev_addr): max6642_dbg = MAX6642Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) max6642_dbg.max6642 = MAX6642(dev_addr, i2c_bus) return max6642_dbg
def create_adc121c021_dbg(dev_name, vref, dev_addr): adc121c021_dbg = ADC121C021Debuger() if dev_name == '': i2c_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLI2CDef.REG_SIZE) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(dev_name) adc121c021_dbg.adc121c021 = ADC121C021(dev_addr, vref, i2c_bus) return adc121c021_dbg
def create_sg2238_dbg(i2c1): sg2238_dbg = Sg2238sp02pcaDebuger() if i2c1 == '': i2c1 = None else: if utility.is_pl_device(i2c1): axi4_bus = AXI4LiteBus(i2c1, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c1) sg2238_dbg.sg223802 = SG2238SP02PCA(i2c_bus) return sg2238_dbg
def create_ad9628_dbg(dev_name, pdwn_ctrl, oeb_ctrl, cs_ctrl, use_cs): ad9628_dbg = AD9628Debuger() if dev_name == '': spi_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLSPIDef.REG_SIZE) spi_bus = MIXQSPISG(axi4_bus) spi_bus.mode = 'MODE1' else: raise NotImplementedError('ps spi bus not support') ad9628_dbg.ad9628 = AD9628(spi_bus, pdwn_ctrl, oeb_ctrl, cs_ctrl, use_cs) return ad9628_dbg
def create_ad9833_dbg(dev_name): ad9833_dbg = AD9833Debuger() if dev_name == '': spi_bus = None else: if utility.is_pl_device(dev_name): axi4_bus = AXI4LiteBus(dev_name, PLSPIDef.REG_SIZE) spi_bus = MIXQSPISG(axi4_bus) spi_bus.set_mode('MODE1') else: raise NotImplementedError('ps spi bus not support') ad9833_dbg.ad9833 = AD9833(spi_bus) return ad9833_dbg
def create_psu001003_dbg(i2c_bus_name): psu001003_dbg = Psu001003Debugger() if i2c_bus_name == '': i2c_bus = None else: if utility.is_pl_device(i2c_bus_name): axi4_bus = AXI4LiteBus(i2c_bus_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_bus_name) psu001003_dbg.psu = PSU001003(i2c_bus) psu001003_dbg.psu.board_init() return psu001003_dbg
def create_armor_dbg(dac_i2c_bus_name, eeprom_i2c_bus_name): armor_dbg = ArmorDebuger() if dac_i2c_bus_name == '': dac_i2c_bus = None else: if utility.is_pl_device(dac_i2c_bus_name): axi4_bus = AXI4LiteBus(dac_i2c_bus_name, 256) dac_i2c_bus = MIXI2CSG(axi4_bus) else: dac_i2c_bus = I2C(dac_i2c_bus_name) if eeprom_i2c_bus_name == '': eeprom_i2c_bus = None else: if utility.is_pl_device(eeprom_i2c_bus_name): axi4_bus = AXI4LiteBus(eeprom_i2c_bus_name, 256) eeprom_i2c_bus = MIXI2CSG(axi4_bus) else: eeprom_i2c_bus = I2C(eeprom_i2c_bus_name) armor_dbg.armor = Armor(dac_i2c_bus, eeprom_i2c_bus) return armor_dbg
def create_moonstar_dbg(ipcore_name, i2c_bus_name): moonstar_dbg = MoonstarDebuger() axi4_bus = AXI4LiteBus(ipcore_name, 9548) daqt1 = MIXDAQT1SGR(axi4_bus, ad717x_chip='AD7175', use_spi=False, use_gpio=False) if utility.is_pl_device(i2c_bus_name): axi4_bus = AXI4LiteBus(i2c_bus_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_bus_name) moonstar_dbg.moonstar = DMM007001(i2c_bus, daqt1) moonstar_dbg.moonstar.post_power_on_init() return moonstar_dbg
def create_warlock_dbg(ipcore_name, i2c_dev, analyzer_dev, adc_rst_pin, adc_ovfl_l_pin, i2s_rx_en_pin, i2s_ch_select_pin, tone_detect_pin): warlock_dbg = WarlockDebuger() if i2c_dev != '': if utility.is_pl_device(i2c_dev): axi4_bus = AXI4LiteBus(i2c_dev, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_dev) else: i2c_bus = None if ipcore_name != '': ipcore = MIXMIK002SGR(ipcore_name) warlock_dbg.warlock = Warlock(i2c_bus, ipcore=ipcore) else: axi4 = AXI4LiteBus(analyzer_dev, 65535) analyzer = MIXFftAnalyzerSG(axi4) adc_rst_pin = GPIO(int(adc_rst_pin), 'output') if adc_rst_pin != "" else None adc_ovfl_l_pin = GPIO(int(adc_ovfl_l_pin), 'output') if adc_ovfl_l_pin != "" else None i2s_rx_en_pin = GPIO(int(i2s_rx_en_pin), 'output') if i2s_rx_en_pin != "" else None i2s_ch_select_pin = GPIO(int(i2s_ch_select_pin), 'output') if i2s_ch_select_pin != "" else None tone_detect_pin = GPIO(int(tone_detect_pin), 'output') if tone_detect_pin != "" else None warlock_dbg.warlock = Warlock(i2c=i2c_bus, ipcore=None, analyzer=analyzer, adc_rst_pin=adc_rst_pin, adc_ovfl_l_pin=adc_ovfl_l_pin, i2s_rx_en_pin=i2s_rx_en_pin, i2s_ch_select_pin=i2s_ch_select_pin, tone_detect_pin=tone_detect_pin, upload_ch_select_pin=None, sample_rate=48000) return warlock_dbg
def create_wolverineii_dbg(ipcore_name, i2c_bus_name): wolverineii_dbg = WolverineiiDebuger() daqt1 = None if ipcore_name != '': axi4_bus = AXI4LiteBus(ipcore_name, 9548) daqt1 = MIXDAQT1SGR(axi4_bus, 'AD7175', use_spi=True, use_gpio=False) if i2c_bus_name == '': i2c_bus = None else: if utility.is_pl_device(i2c_bus_name): axi4_bus = AXI4LiteBus(i2c_bus_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_bus_name) wolverineii_dbg.wolverineii = WolverineII(i2c_bus, daqt1) wolverineii_dbg.wolverineii.module_init() return wolverineii_dbg
def create_dagger_dbg(ip_name, i2c_name, ad717x_name): dagger_dbg = None if utility.is_pl_device(i2c_name): axi4_bus = AXI4LiteBus(i2c_name, 256) i2c = MIXI2CSG(axi4_bus) else: i2c = I2C(i2c_name) if ip_name == '': axi4_bus = AXI4LiteBus(ad717x_name, 0x8000) ad717x = MIXAd7175SG(axi4_bus, 5000) dagger_dbg = DaggerDebugger(Dagger(i2c, ad717x)) else: axi4_bus = AXI4LiteBus(ip_name, 256) mix_daqt1 = MIXDAQT1SGR(axi4_bus, ad717x_mvref=5000, use_spi=False, use_gpio=False) dagger_dbg = DaggerDebugger(Dagger(i2c, ipcore=mix_daqt1)) return dagger_dbg
def create_wolverine_dbg(i2c_dev_name, ad7175, range_ctrl_pin, meter_ctrl_pin, ipcore): ''' cmd: python dmm001003_map_tool.py -i2c /dev/i2c-0 -rp 86 -mp 87 -ip /dev/MIX_DAQT1_0 ''' if utility.is_pl_device(i2c_dev_name): axi4_bus = AXI4LiteBus(i2c_dev_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_dev_name) if range_ctrl_pin and meter_ctrl_pin: range_ctrl_pin = GPIO(pin_id=int(range_ctrl_pin), default_dir='output') meter_ctrl_pin = GPIO(pin_id=int(meter_ctrl_pin), default_dir='output') else: print "Invalid parameter, please check" wolverine_dbg = WolverineDebugger( Wolverine(i2c_bus, ad7175, range_ctrl_pin, meter_ctrl_pin, ipcore)) return wolverine_dbg
def create_iceman_dbg(ip_name, signal_source_name, io_name, pin, i2c_name): iceman_dbg = None if utility.is_pl_device(i2c_name): axi4_bus = AXI4LiteBus(i2c_name, 256) i2c = MIXI2CSG(axi4_bus) else: i2c = I2C(i2c_name) if ip_name == '': axi4_bus = AXI4LiteBus(signal_source_name, 256) signal_source = MIXSignalSourceSG(axi4_bus) axi4_bus = AXI4LiteBus(io_name, 256) pl_gpio = MIXGPIOSG(axi4_bus) iceman_dbg = IcemanDebugger() iceman_dbg.iceman = Iceman(i2c, signal_source, Pin(pl_gpio, pin)) else: axi4_bus = AXI4LiteBus(ip_name, 0x8000) mix_sgt1 = MIXSGT1SGR(axi4_bus) iceman_dbg = IcemanDebugger() iceman_dbg.iceman = Iceman(i2c, ipcore=mix_sgt1) return iceman_dbg
def create_dbg(file, uart, i2c_bus_name, plgpio, pull_up_pin_num, pull_down_pin_num, tx_en_pin_num, removal_det_pin_num, connect_det_pin_num, a0_pin_id, a1_pin_id, a2_pin_id, elaod_en_pin_id): dbg = DarkBeastDebuger() firmware_path = file pl_uart_drv_ko_file = uart if i2c_bus_name == '': i2c_bus = None else: if utility.is_pl_device(i2c_bus_name): axi4_bus = AXI4LiteBus(i2c_bus_name, 256) i2c_bus = MIXI2CSG(axi4_bus) else: i2c_bus = I2C(i2c_bus_name) if plgpio == '': gpio = None else: axi4_bus = AXI4LiteBus(plgpio, 256) gpio = MIXGPIOSG(axi4_bus) pull_up_pin = GPIO(int(pull_up_pin_num)) pull_down_pin = GPIO(int(pull_down_pin_num)) tx_en_pin = GPIO(int(tx_en_pin_num)) removal_det_pin = GPIO(int(removal_det_pin_num)) connect_det_pin = GPIO(int(connect_det_pin_num)) cat9555 = CAT9555(0x20, i2c_bus) a0_pin = Pin(cat9555, a0_pin_id) a1_pin = Pin(cat9555, a1_pin_id) a2_pin = Pin(cat9555, a2_pin_id) elaod_en_pin = Pin(cat9555, elaod_en_pin_id) dbg.darkbeast = DarkBeast(firmware_path, pl_uart_drv_ko_file, i2c_bus, gpio, pull_up_pin, pull_down_pin, tx_en_pin, removal_det_pin, connect_det_pin, a0_pin, a1_pin, a2_pin, elaod_en_pin) return dbg