astra/f1c100s

This code defines and renders a four-layer, top-mounted F1C100S module with detailed pin assignments, schematic annotations, and layout profiles, facilitating design, validation, and routing of the hardware including support for decoupling capacitors, crystal oscillators, and external connectors.

Version
0.11.0
License
unset
Stars
0

imports/F1C100S.tsx

import type { ChipProps } from "@tscircuit/props"

const pinLabels = {
  pin1: ["HPL"],
  pin2: ["HPCOMFB"],
  pin3: ["HPCOM"],
  pin4: ["HPVCC"],
  pin5: ["VCC_IO1"],
  pin6: ["PD0"],
  pin7: ["PD1"],
  pin8: ["PD2"],
  pin9: ["PD3"],
  pin10: ["PD4"],
  pin11: ["PD5"],
  pin12: ["PD6"],
  pin13: ["PD7"],
  pin14: ["PD8"],
  pin15: ["PD9"],
  pin16: ["PD10"],
  pin17: ["PD11"],
  pin18: ["PD12"],
  pin19: ["PD13"],
  pin20: ["VCC_IO2"],
  pin21: ["PD14"],
  pin22: ["VDD_CORE1"],
  pin23: ["PD15"],
  pin24: ["PD16"],
  pin25: ["PD17"],
  pin26: ["PD18"],
  pin27: ["PD19"],
  pin28: ["PD20"],
  pin29: ["PD21"],
  pin30: ["VCC_DRAM1"],
  pin31: ["VCC_DRAM2"],
  pin32: ["VCC_DRAM3"],
  pin33: ["SVREF"],
  pin34: ["VCC_DRAM4"],
  pin35: ["VDD_CORE2"],
  pin36: ["VCC_DRAM5"],
  pin37: ["PE12"],
  pin38: ["PE11"],
  pin39: ["PE10"],
  pin40: ["PE9"],
  pin41: ["PE8"],
  pin42: ["PE7"],
  pin43: ["PE6"],
  pin44: ["PE5"],
  pin45: ["PE4"],
  pin46: ["PE3"],
  pin47: ["PE2"],
  pin48: ["PE1"],
  pin49: ["PE0"],
  pin50: ["VCC_IO3"],
  pin51: ["HOSCI"],
  pin52: ["HOSCO"],
  pin53: ["PF5"],
  pin54: ["PF4"],
  pin55: ["PF3"],
  pin56: ["PF2"],
  pin57: ["PF1"],
  pin58: ["PF0"],
  pin59: ["PC0"],
  pin60: ["PC1"],
  pin61: ["PC2"],
  pin62: ["PC3"],
  pin63: ["TPY2"],
  pin64: ["TPY1"],
  pin65: ["TPX2"],
  pin66: ["TPX1"],
  pin67: ["UVCC"],
  pin68: ["USB_DM"],
  pin69: ["USB_DP"],
  pin70: ["RESET"],
  pin71: ["VDD_CORE3"],
  pin72: ["TVOUT"],
  pin73: ["TV_VCC"],
  pin74: ["TVGND"],
  pin75: ["TV_VRN"],
  pin76: ["TV_VRP"],
  pin77: ["TVIN1"],
  pin78: ["TVIN0"],
  pin79: ["LRADC0"],
  pin80: ["AVCC"],
  pin81: ["VRA1"],
  pin82: ["AGND"],
  pin83: ["VRA2"],
  pin84: ["FMINL"],
  pin85: ["FMINR"],
  pin86: ["LINL"],
  pin87: ["MICIN"],
  pin88: ["HPR"],
  pin89: ["GND"]
} as const

const pinAttributes = {
  pin82: {requiresGround: true},
  pin89: {requiresGround: true}
} as const

export const F1C100S = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      pinAttributes={pinAttributes}
      supplierPartNumbers={{
  "jlcpcb": [
    "C1511928"
  ]
}}
      manufacturerPartNumber="F1C100S"
      footprint={<footprint>
        <smtpad portHints={["pin1"]} pcbX="-4.19989mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin2"]} pcbX="-3.800094mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin3"]} pcbX="-3.400044mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin4"]} pcbX="-2.999994mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin5"]} pcbX="-2.599944mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin6"]} pcbX="-2.199894mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin7"]} pcbX="-1.800098mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin8"]} pcbX="-1.400048mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin9"]} pcbX="-0.999998mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin10"]} pcbX="-0.599948mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin11"]} pcbX="-0.199898mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin12"]} pcbX="0.199898mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin13"]} pcbX="0.599948mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin14"]} pcbX="0.999998mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin15"]} pcbX="1.400048mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin16"]} pcbX="1.800098mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin17"]} pcbX="2.199894mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin18"]} pcbX="2.599944mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin19"]} pcbX="2.999994mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin20"]} pcbX="3.400044mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin21"]} pcbX="3.800094mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin22"]} pcbX="4.19989mm" pcbY="-4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin23"]} pcbX="4.99999mm" pcbY="-4.19989mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin24"]} pcbX="4.99999mm" pcbY="-3.800094mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin25"]} pcbX="4.99999mm" pcbY="-3.400044mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin26"]} pcbX="4.99999mm" pcbY="-2.999994mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin27"]} pcbX="4.99999mm" pcbY="-2.599944mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin28"]} pcbX="4.99999mm" pcbY="-2.199894mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin29"]} pcbX="4.99999mm" pcbY="-1.800098mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin30"]} pcbX="4.99999mm" pcbY="-1.400048mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin31"]} pcbX="4.99999mm" pcbY="-0.999998mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin32"]} pcbX="4.99999mm" pcbY="-0.599948mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin33"]} pcbX="4.99999mm" pcbY="-0.199898mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin34"]} pcbX="4.99999mm" pcbY="0.199898mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin35"]} pcbX="4.99999mm" pcbY="0.599948mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin36"]} pcbX="4.99999mm" pcbY="0.999998mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin37"]} pcbX="4.99999mm" pcbY="1.400048mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin38"]} pcbX="4.99999mm" pcbY="1.800098mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin39"]} pcbX="4.99999mm" pcbY="2.199894mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin40"]} pcbX="4.99999mm" pcbY="2.599944mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin41"]} pcbX="4.99999mm" pcbY="2.999994mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin42"]} pcbX="4.99999mm" pcbY="3.400044mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin43"]} pcbX="4.99999mm" pcbY="3.800094mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin44"]} pcbX="4.99999mm" pcbY="4.19989mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin45"]} pcbX="4.19989mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin46"]} pcbX="3.800094mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin47"]} pcbX="3.400044mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin48"]} pcbX="2.999994mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin49"]} pcbX="2.599944mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin50"]} pcbX="2.199894mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin51"]} pcbX="1.800098mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin52"]} pcbX="1.400048mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin53"]} pcbX="0.999998mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin54"]} pcbX="0.599948mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin55"]} pcbX="0.199898mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin56"]} pcbX="-0.199898mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin57"]} pcbX="-0.599948mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin58"]} pcbX="-0.999998mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin59"]} pcbX="-1.400048mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin60"]} pcbX="-1.800098mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin61"]} pcbX="-2.199894mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin62"]} pcbX="-2.599944mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin63"]} pcbX="-2.999994mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin64"]} pcbX="-3.400044mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin65"]} pcbX="-3.800094mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin66"]} pcbX="-4.19989mm" pcbY="4.99999mm" width="0.1999996mm" height="0.7999984mm" shape="rect" />
<smtpad portHints={["pin67"]} pcbX="-4.99999mm" pcbY="4.19989mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin68"]} pcbX="-4.99999mm" pcbY="3.800094mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin69"]} pcbX="-4.99999mm" pcbY="3.400044mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin70"]} pcbX="-4.99999mm" pcbY="2.999994mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin71"]} pcbX="-4.99999mm" pcbY="2.599944mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin72"]} pcbX="-4.99999mm" pcbY="2.199894mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin73"]} pcbX="-4.99999mm" pcbY="1.800098mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin74"]} pcbX="-4.99999mm" pcbY="1.400048mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin75"]} pcbX="-4.99999mm" pcbY="0.999998mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin76"]} pcbX="-4.99999mm" pcbY="0.599948mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin77"]} pcbX="-4.99999mm" pcbY="0.199898mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin78"]} pcbX="-4.99999mm" pcbY="-0.199898mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin79"]} pcbX="-4.99999mm" pcbY="-0.599948mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin80"]} pcbX="-4.99999mm" pcbY="-0.999998mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin81"]} pcbX="-4.99999mm" pcbY="-1.400048mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin82"]} pcbX="-4.99999mm" pcbY="-1.800098mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin83"]} pcbX="-4.99999mm" pcbY="-2.199894mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin84"]} pcbX="-4.99999mm" pcbY="-2.599944mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin85"]} pcbX="-4.99999mm" pcbY="-2.999994mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin86"]} pcbX="-4.99999mm" pcbY="-3.400044mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin87"]} pcbX="-4.99999mm" pcbY="-3.800094mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin88"]} pcbX="-4.99999mm" pcbY="-4.19989mm" width="0.7999984mm" height="0.1999996mm" shape="rect" />
<smtpad portHints={["pin89"]} pcbX="0mm" pcbY="0mm" width="6.7499992mm" height="6.7499992mm" shape="rect" />
<silkscreenpath route={[{"x":-5.076190000000111,"y":4.5025055999999495},{"x":-5.076190000000111,"y":5.076189999999997},{"x":-4.502505600000063,"y":5.076189999999997}]} />
<silkscreenpath route={[{"x":5.076189999999997,"y":4.5025055999999495},{"x":5.076189999999997,"y":5.076189999999997},{"x":4.5025055999999495,"y":5.076189999999997}]} />
<silkscreenpath route={[{"x":-5.076190000000111,"y":-4.502505600000063},{"x":-5.076190000000111,"y":-5.076189999999997},{"x":-4.502505600000063,"y":-5.076189999999997}]} />
<silkscreenpath route={[{"x":5.076189999999997,"y":-4.502505600000063},{"x":5.076189999999997,"y":-5.076189999999997},{"x":4.5025055999999495,"y":-5.076189999999997}]} />
<silkscreencircle pcbX="-4.19989mm" pcbY="-5.809996mm" radius="0.119888mm" />
<silkscreentext text="{NAME}" pcbX="-0.0127mm" pcbY="6.4102mm" anchorAlignment="center" fontSize="1mm" />
<courtyardoutline outline={[{"x":-5.660200000000032,"y":5.660200000000145},{"x":5.634799999999814,"y":5.660200000000145},{"x":5.634799999999814,"y":-6.1681999999998425},{"x":-5.660200000000032,"y":-6.1681999999998425},{"x":-5.660200000000032,"y":5.660200000000145}]} />
      </footprint>}
      cadModel={{
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1511928.obj?uuid=839c59418f7e49458bab28c15acbb729",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C1511928.step?uuid=839c59418f7e49458bab28c15acbb729",
        pcbRotationOffset: 0,
        modelOriginPosition: { x: 0, y: 0, z: 0 },
      }}
      {...props}
    />
  )
}