from collections import defaultdict from skidl import Pin, Part, Alias, SchLib, SKIDL, TEMPLATE from skidl.pin import pin_types SKIDL_lib_version = '0.0.1' mcu_core = SchLib(tool=SKIDL).add_parts(*[ Part(**{ 'name':'RP2350A', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'RP2350A'}), 'ref_prefix':'U', 'fplist':['Package_DFN_QFN:QFN-60-1EP_7x7mm_P0.4mm_EP3.4x3.4mm'], 'footprint':'Package_DFN_QFN:QFN-60-1EP_7x7mm_P0.4mm_EP3.6x3.6mm', 'keywords':'RPi Pico USB QSPI I2C UART ADC SC1509', 'description':'A microcontroller by Raspberry Pi, dual CPU architecture (ARM Cortex-M33 / RISC-V Hazard3), 150MHz, no flash, 520KB SRAM, 12 PIO state machines, VQFN-60', 'datasheet':'https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.pdf', 'pins':[ Pin(num='46',name='VREG_AVDD',func=pin_types.PWRIN,unit=1), Pin(num='53',name='USB_OTP_VDD',func=pin_types.PWRIN,unit=1), Pin(num='54',name='QSPI_IOVDD',func=pin_types.PWRIN,unit=1), Pin(num='47',name='VREG_PGND',func=pin_types.PWRIN,unit=1), Pin(num='39',name='DVDD',func=pin_types.PASSIVE,unit=1), Pin(num='6',name='DVDD',func=pin_types.PWRIN,unit=1), Pin(num='26',name='RUN',func=pin_types.INPUT,unit=1), Pin(num='51',name='USB_DM',func=pin_types.BIDIR,unit=1), Pin(num='52',name='USB_DP',func=pin_types.BIDIR,unit=1), Pin(num='60',name='~{QSPI_SS}',func=pin_types.OUTPUT,unit=1), Pin(num='56',name='QSPI_SCLK',func=pin_types.OUTPUT,unit=1), Pin(num='57',name='QSPI_SD0',func=pin_types.BIDIR,unit=1), Pin(num='59',name='QSPI_SD1',func=pin_types.BIDIR,unit=1), Pin(num='58',name='QSPI_SD2',func=pin_types.BIDIR,unit=1), Pin(num='55',name='QSPI_SD3',func=pin_types.BIDIR,unit=1), Pin(num='21',name='XIN',func=pin_types.INPUT,unit=1), Pin(num='22',name='XOUT',func=pin_types.OUTPUT,unit=1), Pin(num='24',name='SWCLK',func=pin_types.INPUT,unit=1), Pin(num='25',name='SWDIO',func=pin_types.BIDIR,unit=1), Pin(num='44',name='ADC_AVDD',func=pin_types.PWRIN,unit=1), Pin(num='1',name='IOVDD',func=pin_types.PWRIN,unit=1), Pin(num='11',name='IOVDD',func=pin_types.PASSIVE,unit=1), Pin(num='20',name='IOVDD',func=pin_types.PASSIVE,unit=1), Pin(num='30',name='IOVDD',func=pin_types.PASSIVE,unit=1), Pin(num='38',name='IOVDD',func=pin_types.PASSIVE,unit=1), Pin(num='45',name='IOVDD',func=pin_types.PASSIVE,unit=1), Pin(num='61',name='GND',func=pin_types.PWRIN,unit=1), Pin(num='49',name='VREG_VIN',func=pin_types.PWRIN,unit=1), Pin(num='48',name='VREG_LX',func=pin_types.PWROUT,unit=1), Pin(num='50',name='VREG_FB',func=pin_types.PASSIVE,unit=1), Pin(num='23',name='DVDD',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='GPIO0',func=pin_types.BIDIR,unit=1), Pin(num='3',name='GPIO1',func=pin_types.BIDIR,unit=1), Pin(num='4',name='GPIO2',func=pin_types.BIDIR,unit=1), Pin(num='5',name='GPIO3',func=pin_types.BIDIR,unit=1), Pin(num='7',name='GPIO4',func=pin_types.BIDIR,unit=1), Pin(num='8',name='GPIO5',func=pin_types.BIDIR,unit=1), Pin(num='9',name='GPIO6',func=pin_types.BIDIR,unit=1), Pin(num='10',name='GPIO7',func=pin_types.BIDIR,unit=1), Pin(num='12',name='GPIO8',func=pin_types.BIDIR,unit=1), Pin(num='13',name='GPIO9',func=pin_types.BIDIR,unit=1), Pin(num='14',name='GPIO10',func=pin_types.BIDIR,unit=1), Pin(num='15',name='GPIO11',func=pin_types.BIDIR,unit=1), Pin(num='16',name='GPIO12',func=pin_types.BIDIR,unit=1), Pin(num='17',name='GPIO13',func=pin_types.BIDIR,unit=1), Pin(num='18',name='GPIO14',func=pin_types.BIDIR,unit=1), Pin(num='19',name='GPIO15',func=pin_types.BIDIR,unit=1), Pin(num='27',name='GPIO16',func=pin_types.BIDIR,unit=1), Pin(num='28',name='GPIO17',func=pin_types.BIDIR,unit=1), Pin(num='29',name='GPIO18',func=pin_types.BIDIR,unit=1), Pin(num='31',name='GPIO19',func=pin_types.BIDIR,unit=1), Pin(num='32',name='GPIO20',func=pin_types.BIDIR,unit=1), Pin(num='33',name='GPIO21',func=pin_types.BIDIR,unit=1), Pin(num='34',name='GPIO22',func=pin_types.BIDIR,unit=1), Pin(num='35',name='GPIO23',func=pin_types.BIDIR,unit=1), Pin(num='36',name='GPIO24',func=pin_types.BIDIR,unit=1), Pin(num='37',name='GPIO25',func=pin_types.BIDIR,unit=1), Pin(num='40',name='GPIO26/ADC0',func=pin_types.BIDIR,unit=1), Pin(num='41',name='GPIO27/ADC1',func=pin_types.BIDIR,unit=1), Pin(num='42',name='GPIO28/ADC2',func=pin_types.BIDIR,unit=1), Pin(num='43',name='GPIO29/ADC3',func=pin_types.BIDIR,unit=1)], 'unit_defs':[] }), Part(**{ 'name':'L', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'L'}), 'ref_prefix':'L', 'fplist':[''], 'footprint':'Inductor_SMD:L_0806_2016Metric', 'keywords':'inductor choke coil reactor magnetic', 'description':'Inductor', 'datasheet':'~', 'pins':[ Pin(num='1',name='1',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='2',func=pin_types.PASSIVE,unit=1)], 'unit_defs':[] }), Part(**{ 'name':'C', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'C'}), 'ref_prefix':'C', 'fplist':[''], 'footprint':'Capacitor_SMD:C_0402_1005Metric', 'keywords':'cap capacitor', 'description':'Unpolarized capacitor', 'datasheet':'~', 'pins':[ Pin(num='1',name='~',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='~',func=pin_types.PASSIVE,unit=1)], 'unit_defs':[] }), Part(**{ 'name':'R', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'R'}), 'ref_prefix':'R', 'fplist':[''], 'footprint':'Resistor_SMD:R_0402_1005Metric', 'keywords':'R res resistor', 'description':'Resistor', 'datasheet':'~', 'pins':[ Pin(num='1',name='~',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='~',func=pin_types.PASSIVE,unit=1)], 'unit_defs':[] }), Part(**{ 'name':'Crystal', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'Crystal'}), 'ref_prefix':'Y', 'fplist':[''], 'footprint':'Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm', 'keywords':'quartz ceramic resonator oscillator', 'description':'Two pin crystal', 'datasheet':'~', 'pins':[ Pin(num='1',name='1',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='2',func=pin_types.PASSIVE,unit=1)], 'unit_defs':[] }), Part(**{ 'name':'W25Q128JVS', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'W25Q128JVS'}), 'ref_prefix':'U', 'fplist':None, 'footprint':'Package_SO:SOIC-8_5.23x5.23mm_P1.27mm', 'keywords':None, 'description':'', 'datasheet':None, 'pins':[ Pin(num='1',name='CS',func=pin_types.INPUT), Pin(num='2',name='IO1',func=pin_types.BIDIR), Pin(num='3',name='IO2',func=pin_types.BIDIR), Pin(num='4',name='GND',func=pin_types.PWRIN), Pin(num='5',name='IO0',func=pin_types.BIDIR), Pin(num='6',name='CLK',func=pin_types.INPUT), Pin(num='7',name='IO3',func=pin_types.BIDIR), Pin(num='8',name='VCC',func=pin_types.PWRIN)] }), Part(**{ 'name':'SW_Push', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'SW_Push'}), 'ref_prefix':'SW', 'fplist':[''], 'footprint':'Button_Switch_SMD:SW_SPST_SKQG_WithStem', 'keywords':'switch normally-open pushbutton push-button', 'description':'Push button switch, generic, two pins', 'datasheet':'~', 'pins':[ Pin(num='1',name='1',func=pin_types.PASSIVE), Pin(num='2',name='2',func=pin_types.PASSIVE)], 'unit_defs':[] }), Part(**{ 'name':'Conn_01x04', 'dest':TEMPLATE, 'tool':SKIDL, 'aliases':Alias({'Conn_01x04'}), 'ref_prefix':'J', 'fplist':[''], 'footprint':'Connector_PinHeader_1.27mm:PinHeader_1x04_P1.27mm_Vertical', 'keywords':'connector', 'description':'Generic connector, single row, 01x04, script generated (kicad-library-utils/schlib/autogen/connector/)', 'datasheet':'~', 'pins':[ Pin(num='1',name='Pin_1',func=pin_types.PASSIVE,unit=1), Pin(num='2',name='Pin_2',func=pin_types.PASSIVE,unit=1), Pin(num='3',name='Pin_3',func=pin_types.PASSIVE,unit=1), Pin(num='4',name='Pin_4',func=pin_types.PASSIVE,unit=1)], 'unit_defs':[] })])