seveibar/am3352-dev-board

A 324-ball TI AM3352 ARM processor with DDR3, LCD, USB, Ethernet, storage, serial, analog, clock, reset, power, and JTAG interfaces, paired with configurable JST-GH board connectors and constrained PCB routing.

Version
1.0.2
License
unset
Stars
0

components/JstGh.tsx

import type { ChipProps } from '@tscircuit/props'
// JST BMxxB-GHS-TBT top-entry GH, 1.25 mm pitch.
// Pad centers/sizes from KiCad Connector_JST GH footprints and JST eGH.pdf.
export function JstGh({pins,...props}:ChipProps & {pins:string[]}) {
 const span=(pins.length-1)*1.25
 const labels=Object.fromEntries([...pins.map((n,i)=>[`pin${i+1}`,[n]]),[`pin${pins.length+1}`,['MP1']],[`pin${pins.length+2}`,['MP2']]])
 return <connector {...props} manufacturerPartNumber={`BM${String(pins.length).padStart(2,'0')}B-GHS-TBT`} pinLabels={labels} footprint={<footprint>
  {pins.map((_,i)=><smtpad portHints={[`pin${i+1}`]} shape="rect" pcbX={i*1.25-span/2} pcbY={-1.95} width={0.6} height={1.7}/>)}
  {[-1,1].map((sign,i)=><smtpad portHints={[`pin${pins.length+i+1}`]} shape="rect" pcbX={sign*(span/2+1.85)} pcbY={1.4} width={1} height={2.8}/>)}
  <silkscreenrect pcbX={0} pcbY={0} width={span+4.5} height={4.25}/>
  <silkscreencircle pcbX={-span/2} pcbY={-3.0} radius={0.18}/>
  <courtyardrect pcbX={0} pcbY={0} width={span+5.71} height={6.6}/>
 </footprint>}/>
}