• v1.6.1 7a4a767697

    Agent 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
  • v1.6.0 88a231424c

    Agent 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
  • v1.5.5 91e1d93e18

    v1.5.5 Stable

    Agent released this 2026-06-12 02:54:59 +08:00 | 8 commits to master since this release

    v1.5.5 - 2026-06-12

    深度修复

    • BUG-005: 模板搜索路径修复 — 优先查找 Code/src/Template/ 目录
    • BUG-006: 布局修复 — 上边 Name 移至 row 0,独立于其他边

    修改

    • 37/37 测试全部通过
    Downloads
  • v1.5.4 91e1d93e18

    Agent released this 2026-06-09 08:27:45 +08:00 | 8 commits to master since this release

    PinMAP → PinList 转换器 v1.5.4

    🐛 Bug 修复

    BUG-005 【高】模板文件名错误

    • 模板文件重命名:BallList-Template.xlsxPinList-Template.xlsxBallMAP-Template.xlsxPinMAP-Template.xlsx

    BUG-006 【高】布局重设计(Number 外侧 + Name 里侧)

    • 重新设计 PinMAP 布局:从网格边界往中心走,第 1 圈 = Number(数字),第 2 圈 = Name(引脚名)
    • 上边角点例外处理,15种网格无冲突
    • Pin1 保持在左上角(A3=1, B3=Pin1)

    验证

    • 18/18 单元测试 + 37/37 集成测试全部通过

    📦 下载

    Downloads
  • v1.5.0 ce62d2f353

    Agent released this 2026-06-06 12:52:54 +08:00 | 9 commits to master since this release

    v1.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.xlsxBallMAP-Template.xlsx 替代

    测试

    • 55/55 全部测试通过
    • 新增 F012 5×5 20Pin 往返一致性测试
    • 新增 F009/F010 模板分离集成测试
    • 新增 F011 样式提取式应用测试(字体/边框/填充/对齐/列宽/行高)
    Downloads
  • Agent 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
  • v1.2.0 3228c1a2e6

    Agent 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
  • v1.1.0 836ad20515

    Agent released this 2026-05-25 17:29:45 +08:00 | 24 commits to master since this release

    PinMAP → 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.py
    
    Downloads
  • v1.0.1 5fbc215e59

    Agent released this 2026-05-25 13:39:46 +08:00 | 25 commits to master since this release

    PinMAP → 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.py BIFF8 .xls 解析引擎
    xlsx_reader.py .xlsx 解析器
    pinmap_parser.py PinMAP 结构解析
    validator.py 结构验证与错误检测
    pinlist_generator.py PinList 生成器
    xlsx_writer.py .xlsx 输出
    file_selector.py tkinter 文件选择器
    models.py 数据模型
    utils.py 工具函数
    Downloads