diff --git a/python/pcb.py b/python/pcb.py index 6b8a760c6c3d6ab55f91c012380338be97948a7c..3a8be09b9eaf9b3b232fdbb14bd285df0269edd1 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -23,7 +23,7 @@ output = "top, labels, and exterior" #output = "top, labels, holes, and exterior" #output = "top, bottom, labels, and exterior" #output = "top, bottom, labels, holes, and exterior" -#output = "top traces" +xoutput = "top traces" #output = "top traces and exterior" #output = "bottom traces" #output = "bottom traces reversed" @@ -6772,9 +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_SOIC(part): + # + # ATtiny1624-SS + # + def __init__(self,value=''): + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + d = 0.11 + w = 0.015 + h = .03 + pad = cube(-h,h,-w,w,0,0) + # + # pin 1 + # + self.shape = translate(pad,-d,.15,0) + self.shape = add(self.shape,cylinder(-d-h,.15,0,0,w)) + self.pad.append(point(-d,.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'.VCC')) + # + # pin 2 + # + self.shape = add(self.shape,translate(pad,-d,.1,0)) + self.pad.append(point(-d,.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA4')) + # + # pin 3 + # + self.shape = add(self.shape,translate(pad,-d,.050,0)) + self.pad.append(point(-d,.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA5')) + # + # pin 4 + # + self.shape = add(self.shape,translate(pad,-d,0,0)) + self.pad.append(point(-d,0,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA6')) + # + # pin 5 + # + self.shape = add(self.shape,translate(pad,-d,-.05,0)) + self.pad.append(point(-d,-.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA7')) + # + # pin 6 + # + self.shape = add(self.shape,translate(pad,-d,-.1,0)) + self.pad.append(point(-d,-.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB3')) + # + # pin 7 + # + self.shape = add(self.shape,translate(pad,-d,-.15,0)) + self.pad.append(point(-d,-.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB2')) + # + # pin 8 + # + self.shape = add(self.shape,translate(pad,d,-.15,0)) + self.pad.append(point(d,-.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB1')) + # + # pin 9 + # + self.shape = add(self.shape,translate(pad,d,-.1,0)) + self.pad.append(point(d,-.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PB0')) + # + # pin 10 + # + self.shape = add(self.shape,translate(pad,d,-.05,0)) + self.pad.append(point(d,-.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'UPDI')) + # + # pin 11 + # + self.shape = add(self.shape,translate(pad,d,0,0)) + self.pad.append(point(d,0,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA1')) + # + # pin 12 + # + self.shape = add(self.shape,translate(pad,d,.050,0)) + self.pad.append(point(d,.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA2')) + # + # pin 13 + # + self.shape = add(self.shape,translate(pad,d,.1,0)) + self.pad.append(point(d,.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PA3')) + # + # pin 14 + self.shape = add(self.shape,translate(pad,d,.15,0)) + self.pad.append(point(d,.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND')) + class ATtiny1624_TSSOP(part): # - # ATtiny1624-XUR + # ATtiny1624-X # def __init__(self,value=''): self.value = value