R2:底板 / 刀片布局布线脚本、快照、截图与规划文档更新(含外壳、打印件、布线归档)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
这个提交包含在:
@@ -0,0 +1,29 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
u"""把 pcb2_strap_place.py 搜出来的坐标写回 pcb2_place.GLOBAL(一次性工具)。"""
|
||||
import io
|
||||
import json
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
|
||||
|
||||
MAP = {'R906': ('15', 'PRT_SWP7'), 'R905': ('17', 'PRT_SWP6'), 'R904': ('31', 'PRT_SWP5'),
|
||||
'R903': ('33', 'PRT_SWP4'), 'R909': ('34', 'GANG_EN'), 'R902': ('47', 'PRT_SWP3'),
|
||||
'R908': ('48', 'BOOST1'), 'R901': ('49', 'PRT_SWP2'), 'R907': ('50', 'BOOST0'),
|
||||
'R900': ('51', 'PRT_SWP1')}
|
||||
|
||||
p = os.path.join(HERE, 'pcb2_place.py')
|
||||
s = io.open(p, encoding='utf-8').read()
|
||||
d = json.load(io.open(os.path.join(HERE, '_pcb2_strap_place.json'), encoding='utf-8'))
|
||||
n = 0
|
||||
for des, (pin, fn) in MAP.items():
|
||||
cx, cy, rot, r = d[des][:4]
|
||||
new = u" '%s': (%.3f, %.3f, %d), # U32.%s %s,离脚 %.1f mm" % (des, cx, cy, rot, pin, fn, r)
|
||||
pat = re.compile(u"^ '" + des + u"': \\([^\\n]*$", re.M)
|
||||
s, k = pat.subn(lambda m: new, s)
|
||||
assert k == 1, des
|
||||
n += k
|
||||
io.open(p, 'w', encoding='utf-8').write(s)
|
||||
print(u'更新 %d 条坐标' % n)
|
||||
在新工单中引用
屏蔽一个用户