Commit 32c67654 authored by john.j.'s avatar john.j. Committed by jean-pierre charras

Fix issue in bga footprint wizard.

parent fca1ba67
...@@ -75,13 +75,14 @@ class PadGridArray(PadArray): ...@@ -75,13 +75,14 @@ class PadGridArray(PadArray):
# handy utility function 1 - A, 2 - B, 26 - AA, etc # handy utility function 1 - A, 2 - B, 26 - AA, etc
# aIndex = 0 for 0 - A # aIndex = 0 for 0 - A
def AlphaNameFromNumber(self, n, aIndex = 1): # alphabet = set of allowable chars if not A-Z, eg ABCDEFGHJKLMNPRTUVWY for BGA
def AlphaNameFromNumber(self, n, aIndex = 1, alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"):
div, mod = divmod(n - aIndex, 26) div, mod = divmod(n - aIndex, len(alphabet))
alpha = chr(65 + mod) alpha = alphabet[mod]
if div > 0: if div > 0:
return self.AlphaNameFromNumber(div) + alpha; return self.AlphaNameFromNumber(div, aIndex, alphabet) + alpha;
return alpha; return alpha;
......
...@@ -24,7 +24,7 @@ import PadArray as PA ...@@ -24,7 +24,7 @@ import PadArray as PA
class BGAPadGridArray(PA.PadGridArray): class BGAPadGridArray(PA.PadGridArray):
def NamingFunction(self, x, y): def NamingFunction(self, x, y):
return "%s%d" % (self.AlphaNameFromNumber(y + 1), x + 1) return "%s%d" % (self.AlphaNameFromNumber(y + 1, alphabet="ABCDEFGHJKLMNPRTUVWY"), x + 1)
class BGAWizard(HFPW.HelpfulFootprintWizardPlugin): class BGAWizard(HFPW.HelpfulFootprintWizardPlugin):
...@@ -76,10 +76,10 @@ class BGAWizard(HFPW.HelpfulFootprintWizardPlugin): ...@@ -76,10 +76,10 @@ class BGAWizard(HFPW.HelpfulFootprintWizardPlugin):
# add in the pads # add in the pads
pad = PA.PadMaker(self.module).SMTRoundPad(pads["pad size"]) pad = PA.PadMaker(self.module).SMTRoundPad(pads["pad size"])
pin1Pos = pcbnew.wxPoint(-((rows - 1) * pad_pitch) / 2, pin1Pos = pcbnew.wxPoint(-((cols - 1) * pad_pitch) / 2,
-((cols - 1) * pad_pitch) / 2) -((rows - 1) * pad_pitch) / 2)
array = BGAPadGridArray(pad, rows, cols, pad_pitch, pad_pitch, pin1Pos) array = BGAPadGridArray(pad, cols, rows, pad_pitch, pad_pitch, pin1Pos)
array.AddPadsToModule() array.AddPadsToModule()
#box #box
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment