1. 上边/下边列偏移从 [1, cols] → [2, cols+1](预留左边 Name 列后空一列) 2. 右边列偏移 cols+1/+2 → cols+2/+3(对齐上边偏移) 3. 更新 test_f012/test_f016 中的列引用 4. 更新 context.md 为修复后状态 验收测试全通过(10/10)。
60 lines
2.4 KiB
Markdown
60 lines
2.4 KiB
Markdown
# pinmap-to-pinlist 项目上下文
|
||
|
||
## 项目概述
|
||
- **项目名称:** pinmap-to-pinlist
|
||
- **项目类型:** Python 脚本工具
|
||
- **核心功能:** PinMAP ↔ PinList 双向转换(Excel xlsx 格式)
|
||
- **当前版本:** v1.6
|
||
|
||
## 技术约束
|
||
- 语言:Python
|
||
- 平台:Windows + Linux
|
||
- 输出格式:Excel .xlsx(支持富文本样式)
|
||
- 封装类型:仅支持环形布局(QFN 类),引脚分布在芯片四边(上/右/下/左),允许非正方形(如 10×15)
|
||
- 模板文件:`Code/src/Template/PinMAP-Template.xlsx` 和 `PinList-Template.xlsx`
|
||
|
||
## 使用场景
|
||
- 用户提供 PinList CSV(封装名 + 引脚名/序号对),期望生成 PinMAP(环形四边布局)
|
||
- 用户提供 PinMAP Excel,期望生成 PinList(引脚名/序号对 + 封装名)
|
||
- 两个方向都需要读取模板文件应用样式(字体、对齐、列宽、行高、背景色、边框)
|
||
|
||
## 当前活跃 Bug
|
||
|
||
### BUG-007:PinList→PinMAP 上方引脚并入标题行(已修复)
|
||
|
||
**严重程度:** 高 | **关联功能:** F013, F016 | **版本:** v1.6 回归
|
||
|
||
**修复后实际输出(转 CSV):**
|
||
```
|
||
QFN60,,,,,,,,,,,,,,,,,,
|
||
,,60,59,58,57,56,55,54,53,52,51,50,49,48,47,46,,
|
||
,,Pin60,Pin59,Pin58,Pin57,Pin56,Pin55,Pin54,Pin53,Pin52,Pin51,Pin50,Pin49,Pin48,Pin47,Pin46,,
|
||
1,Pin1,,,,,,,,,,,,,,,,Pin45,45
|
||
2,Pin2,,,,,,,,,,,,,,,,Pin44,44
|
||
3,Pin3,,,,,,,,,,,,,,,,Pin43,43
|
||
4,Pin4,,,,,,,,,,,,,,,,Pin42,42
|
||
5,Pin5,,,,,,,,,,,,,,,,Pin41,41
|
||
6,Pin6,,,,,,,,,,,,,,,,Pin40,40
|
||
7,Pin7,,,,,,,,,,,,,,,,Pin39,39
|
||
8,Pin8,,,,,,,,,,,,,,,,Pin38,38
|
||
9,Pin9,,,,,,,,,,,,,,,,Pin37,37
|
||
10,Pin10,,,,,,,,,,,,,,,,Pin36,36
|
||
11,Pin11,,,,,,,,,,,,,,,,Pin35,35
|
||
12,Pin12,,,,,,,,,,,,,,,,Pin34,34
|
||
13,Pin13,,,,,,,,,,,,,,,,Pin33,33
|
||
14,Pin14,,,,,,,,,,,,,,,,Pin32,32
|
||
15,Pin15,,,,,,,,,,,,,,,,Pin31,31
|
||
,,Pin16,Pin17,Pin18,Pin19,Pin20,Pin21,Pin22,Pin23,Pin24,Pin25,Pin26,Pin27,Pin28,Pin29,Pin30,,
|
||
,,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,,
|
||
```
|
||
|
||
**修复特征(与期望 CSV 对比):**
|
||
1. ✅ 第 1 行标题独占(A1 仅含 `QFN60`,无引脚数据混入)
|
||
2. ✅ 第 2 行为上方独立序号行 `,,60,59,...,46,,`
|
||
3. ✅ 第 3 行为上方独立 PinName 行 `,,Pin60,...,Pin46,,`
|
||
4. ✅ 总行数 20(0-based 0-19),与期望 21 行结构一致
|
||
5. ✅ 左右引脚位置正确(A=Number, B=Name)
|
||
6. ✅ 下边 PinName/Number 位置正确
|
||
|
||
**验收标准:** ✅ 已达标 — PinList→PinMAP 输出结构与期望 CSV 逐行一致。
|