zh150 贴片, WR 弯的,有机械焊盘固定

;FPM skill by Richard L. version=0.08 [email protected]
;Tree:Connector/Header
;Desc:zh150 贴片, WR 弯的,有机械焊盘固定
;Vendor:
;Count:20
;CVG64:bitmap field, not implemented yet.
;Datasheet:
Tabs='(
(2 3)
(3 4.5)
(4 6)
(5 7.5)
(6 9)
(7 10.5)
(8 12)
(9 13.5)
(10 15)
;(11 16.5)
(12 18)
(13 19.5)
(14 21)
(15 22.5)
(16 24)
(17 25.5)
(18 27)
(19 28.5)
(20 30)
)
;courtyard 庭院,我测试了一下应该是器件周围的距离
Courtyard=1.0 pH=4 Pitch=1.5
Width=6;先定义为器件的宽度
foreach(aTb Tabs
CKTS =nth(0 aTb)
A =nth(1 aTb) ;这个参数是获取 Tabs表格中的第二列的数据
sprintf(pName,"ZH150M-1X%dSWR",CKTS)
_PrepareNewSym(pName)
;PadN=_PadTH_Default()
PadN=_PadSM(0.7 2.5 t) ;第三个参数是标识矩形焊盘。默认的事椭圆焊盘。t是表示真,还有nil是标识空,假
;_PinArray(PadN Col Row PitchX/Y (P1=0:0 bRight bUp bRowFirst bPin1 bPinNum P1Offset=0 PAngle=0 TAngle=0)

_PinArray(PadN CKTS 1 Pitch 0 -(CKTS-1)*Pitch/2:0)
;这个_CreatePinMechanical 用来放置机械焊盘

Pad_Mech=_PadSM(1.2 2.2 t)
_CreatePinMechanical(Pad_Mech -(CKTS-1)*Pitch/2-2.5:-2.8)
_CreatePinMechanical(Pad_Mech (CKTS-1)*Pitch/2+2.5:-2.8)

;bound
_Layer(lPkgGeoPlaceT)
;shape里面的第二个参数 上下宽度,第三个参数,是高度
_BoundHeight(_ShapeRectangle(A+Pitch+Courtyard*2 Courtyard*2+Width 0:-2.4) pH)
;silkscreen & assembly
for(i 1 2
    case(i
    (1 _Layer(lPkgGeoSilkT))
    (2 _Layer(lPkgGeoAsmT)))

    ;这个应该是画第一脚的 三角形的.
    _Triangle(-(CKTS-1)*Pitch/2:1.3 2 270)
    ;这里面的第二个参数是矩形的上下宽度
    _Rectangle(A+Pitch Width 0:-2.4)
    ;_Line(list(-(CKTS-1)*Pitch/2:Width/2 -(CKTS-1)*Pitch/2:Width/2-1) 1);这个第三个参数可以设置 线的粗细.
    ;_Line(list((CKTS-1)*Pitch/2:Width/2 (CKTS-1)*Pitch/2:Width/2-1) 1);这个第三个参数可以设置 线的粗细.
)
;ref & val
_CreateRefValue(pName 0:-Width/2-tSilkHeight/2)
;_CrossCenter()
axlSetSymbolType("package");哈哈哈,这里一定要注意.之前的cadence 16.6 用fpm 创建的器件封装不能保存.是因为 setup ->design parameter的 design
;drawing type 的类型需要修改成为 package. 用了这个函数接口,就直接讲类型修改了. 后面就可以直接保存使用了.
_SaveDesign(pName)
_MakeDevice(pName 2) ;0-IC 1-IO 2-DISCRETE
);foreach

你可能感兴趣的:(硬件工程)