-
pinmap-to-pinlist-v1.6.1 Stable
released this
2026-06-12 22:35:04 +08:00 | 3 commits to master since this release🔧 PinMAP → PinList 转换器 v1.6.1
🐛 Bug 修复
BUG-007 — PinList→PinMAP 生成布局方向修正
修复 PinList→PinMAP 转换生成的 Excel 文件中,布局方向不符合用户实际需求的问题。
变更内容:
- 布局体系从旧版改为 Layout B:
- 上边 Number 移至第 0 行(与 A1 标题同行)
- 上边 PinName 移至第 1 行
- 左/下/右边坐标同步偏移 -1 行
- B 列(col 1)保留为空白列,保持视觉分隔
- 更新所有相关测试数据以匹配 Layout B 坐标
修改文件:
文件 变更 Code/src/pinmap_layout.py坐标公式更新为 Layout B Code/src/test_pinmap.py测试数据更新匹配 Layout B 📋 受影响功能
- PinList→PinMAP 方向转换
- 所有封装类型(QFP、QFN 等)
Downloads
- 布局体系从旧版改为 Layout B:
-
pinmap-to-pinlist v1.6.0 Stable
released this
2026-06-12 20:45:25 +08:00 | 5 commits to master since this release🔧 PinMAP → PinList 转换器 v1.6.0
🐛 Bug 修复
F013 — 修复 PinMAP→PinList 上方引脚丢失
- 根因:硬编码假设上边 Name 在 Number 上方,但用户真实 PinMAP 中 Number 在上、Name 在下
- 修复:增加
_detect_top_layout()自动检测两种布局(Layout A/B) - QFN60(15×15,60 引脚)端到端往返验证通过
F014/F015 — 双向模板样式确认
- PinMAP→PinList 使用 PinList-Template.xlsx,样式解析成功(fonts=2, fills=1, borders=2, cell_xfs=4)
- PinList→PinMAP 使用 PinMAP-Template.xlsx,样式解析成功(fonts=2, fills=2, borders=2, cell_xfs=4)
✅ 测试
- 新增 5 个 QFN60 端到端测试(F016/F017)
- 全量 23/23 测试全部通过
- 覆盖两种布局方向(Layout A/B)+ 往返一致性
📦 下载
Downloads
-
PinMAP转PinList v1.5.4 Stable
released this
2026-06-09 08:27:45 +08:00 | 8 commits to master since this releasePinMAP → PinList 转换器 v1.5.4
🐛 Bug 修复
BUG-005 【高】模板文件名错误
- 模板文件重命名:
BallList-Template.xlsx→PinList-Template.xlsx,BallMAP-Template.xlsx→PinMAP-Template.xlsx
BUG-006 【高】布局重设计(Number 外侧 + Name 里侧)
- 重新设计 PinMAP 布局:从网格边界往中心走,第 1 圈 = Number(数字),第 2 圈 = Name(引脚名)
- 上边角点例外处理,15种网格无冲突
- Pin1 保持在左上角(A3=1, B3=Pin1)
✅ 验证
- 18/18 单元测试 + 37/37 集成测试全部通过
📦 下载
Downloads
- 模板文件重命名:
-
PinMAP转PinList v1.5.0 Stable
released this
2026-06-06 12:52:54 +08:00 | 9 commits to master since this releasev1.5.0 - 2026-06-06
🐛 Bug 修复
- F012: 确认 PinMAP 生成中上/下边 PinName 位置正确(下边 Name 在 max_row-1,上边 Name 在 min_row+1),新增 5×5 往返回归测试
✨ 功能新增
- F009 MAP→List 使用 balllist 模板:
run_map_to_list()查找并使用BallList-Template.xlsx,不再共用旧模板 - F010 List→MAP 使用 ballmap 模板:
run_list_to_map()查找并使用BallMAP-Template.xlsx,两个方向模板完全分离 - F011 模板格式提取式应用: 从模板的 cellXfs/fonts/borders/fills 提取实际样式定义(字体、边框、填充、对齐、列宽、行高),替换之前硬编码的边框和对齐;输出行列由实际 Pin 数量决定,不复制模板行列结构;无模板时优雅回退到默认样式
🗑️ 废弃
PinMAP-Template.xlsx不再自动查找 — 由BallList-Template.xlsx和BallMAP-Template.xlsx替代
✅ 测试
- 55/55 全部测试通过
- 新增 F012 5×5 20Pin 往返一致性测试
- 新增 F009/F010 模板分离集成测试
- 新增 F011 样式提取式应用测试(字体/边框/填充/对齐/列宽/行高)
Downloads
-
PinMAP转PinList v1.3.15 Stable
released this
2026-06-02 18:39:29 +08:00 | 15 commits to master since this release🐛 Bug 修复
- pinmap_layout.py: 周长公式从
2(rows+cols)−4改为(rows+cols)×2— 修复角点共享策略,每条边独立包含其端点 - pinmap_generator.py: 角点单元格写入
"6/7"格式 — 修复 v1.3 下角点引脚丢失问题 - pinmap_parser.py: 读取时包含角点,按
"/"拆分解析多引脚序号 — 修复 roundtrip 丢失引脚问题
Downloads
- pinmap_layout.py: 周长公式从
-
PinMAP转PinList v1.2.0 Stable
released this
2026-05-28 01:53:58 +08:00 | 21 commits to master since this release🆕 新功能
- PinList → MAP 反向转换:支持将 PinList Excel 文件反向转换为 PinMAP 格式
- 新增模块:
pinlist_parser.py— PinList Excel 解析器pinlist_validator.py— PinList 数据验证器pinmap_generator.py— PinMAP 输出生成器pinmap_layout.py— PinMAP 布局管理器template_reader.py— 模板读取器
📊 测试
- 23 个测试用例全部通过
- 覆盖正向转换、反向转换、边界情况
📦 打包
pinmap-to-pinlist-v1.2.0.zip
Downloads
-
PinMAP → PinList 转换器 v1.1.0 Stable
released this
2026-05-25 17:29:45 +08:00 | 24 commits to master since this releasePinMAP → PinList 转换器 v1.1.0
发布日期: 2026-05-25
仓库: https://git.cclee.wiki/GoudanLabs/pinmap-to-pinlist
标签: v1.1.0🆕 新增功能
- 交互提示增强:启动时显示程序说明,转换过程显示详细日志,完成后显示结果摘要
- 文件选择优化:支持手动输入文件路径,路径不存在时循环重试,空输入时弹窗选择
- 窗口属性配置:UTF-8编码、80x20窗口、黑底青字、固定署名、任意键退出
- 启动脚本:新建 run.bat,一键启动
📦 发布包
pinmap-to-pinlist-v1.1.0.zip— 完整源码 + 文档 + 测试夹具 + 启动脚本
🚀 使用
# 方式1:双击运行 run.bat # 方式2:命令行 python main.pyDownloads
-
PinMAP → PinList 转换器 v1.0.1 Stable
released this
2026-05-25 13:39:46 +08:00 | 25 commits to master since this releasePinMAP → PinList 转换器 v1.0.0
发布日期: 2026-05-25
仓库: https://git.cclee.wiki/GoudanLabs/pinmap-to-pinlist
标签: v1.0.0
📦 发布包
pinmap-to-pinlist-v1.0.0.zip— 完整源码 + 文档 + 测试夹具
✨ 功能
- PinMAP 解析:方形/长方形封装,左上角 1 脚,逆时针排序
- 格式支持:
.xls(BIFF8 引擎)+.xlsx - 智能验证:重复引脚 / 间隙 / 空单元格检测
- PinList 生成:逆时针 PinMAP → 顺时针 PinList 自动转换
- 双模式:GUI 文件选择 + 命令行
🚀 使用
# GUI 模式 python main.py # 命令行模式 python main.py input.xlsx📁 项目结构
Code/src/ — 源代码(10 个模块) Code/docs/ — 架构文档 Test/ — 测试夹具 + 报告🔧 技术
- Python 3.x 标准库,零第三方依赖
- 自定义 BIFF8 引擎(~19KB)
- openpyxl(.xlsx 读写)
📋 模块列表
模块 功能 main.py入口与流程编排 xls_reader.pyBIFF8 .xls 解析引擎 xlsx_reader.py.xlsx 解析器 pinmap_parser.pyPinMAP 结构解析 validator.py结构验证与错误检测 pinlist_generator.pyPinList 生成器 xlsx_writer.py.xlsx 输出 file_selector.pytkinter 文件选择器 models.py数据模型 utils.py工具函数 Downloads