diff --git a/python/pcb.py b/python/pcb.py index 51324334c2ab7dbaeedbc5e6293745aea3e48bf1..6b8a760c6c3d6ab55f91c012380338be97948a7c 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -6772,6 +6772,106 @@ class SAMD11D(part): self.pad.append(point(d,.225,0)) self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'A04')) +class ATtiny1624_TSSOP(part): + # + # ATtiny1624-XUR + # + def __init__(self,value=''): + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + p = 0.65/25.4 + d = (6.4/2+4.4/2)/2/25.4 + w = 0.0099/2 + h = (6.4-4.4)/2/25.4 + pad = cube(-h,h,-w,w,0,0) + l = 0.004 + # + # pin 1 + # + self.shape = translate(pad,-d,3*p,0) + self.shape = add(self.shape,cylinder(-d-h,3*p,0,0,w)) + self.pad.append(point(-d,3*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'.VCC',line=l)) + # + # pin 2 + # + self.shape = add(self.shape,translate(pad,-d,2*p,0)) + self.pad.append(point(-d,2*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA4',line=l)) + # + # pin 3 + # + self.shape = add(self.shape,translate(pad,-d,1*p,0)) + self.pad.append(point(-d,1*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA5',line=l)) + # + # pin 4 + # + self.shape = add(self.shape,translate(pad,-d,0*p,0)) + self.pad.append(point(-d,0*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA6',line=l)) + # + # pin 5 + # + self.shape = add(self.shape,translate(pad,-d,-1*p,0)) + self.pad.append(point(-d,-1*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA7',line=l)) + # + # pin 6 + # + self.shape = add(self.shape,translate(pad,-d,-2*p,0)) + self.pad.append(point(-d,-2*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB3',line=l)) + # + # pin 7 + # + self.shape = add(self.shape,translate(pad,-d,-3*p,0)) + self.pad.append(point(-d,-3*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB2',line=l)) + # + # pin 8 + # + self.shape = add(self.shape,translate(pad,d,-3*p,0)) + self.pad.append(point(d,-3*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB1',line=l)) + # + # pin 9 + # + self.shape = add(self.shape,translate(pad,d,-2*p,0)) + self.pad.append(point(d,-2*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB0',line=l)) + # + # pin 10 + # + self.shape = add(self.shape,translate(pad,d,-1*p,0)) + self.pad.append(point(d,-1*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'UPDI',line=l)) + # + # pin 11 + # + self.shape = add(self.shape,translate(pad,d,0*p,0)) + self.pad.append(point(d,0*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA1',line=l)) + # + # pin 12 + # + self.shape = add(self.shape,translate(pad,d,1*p,0)) + self.pad.append(point(d,1*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA2',line=l)) + # + # pin 13 + # + self.shape = add(self.shape,translate(pad,d,2*p,0)) + self.pad.append(point(d,2*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA3',line=l)) + # + # pin 14 + self.shape = add(self.shape,translate(pad,d,3*p,0)) + self.pad.append(point(d,3*p,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND',line=l)) + + class ATtiny1614(part): # # SOIC