Files
ldc1612_cmake_vscode/LDC1612_COIL_TEST_GUIDE.md
2025-08-17 02:58:32 +08:00

282 lines
7.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# LDC1612 线圈性能测试指南
## 概述
这份文档详细说明如何使用M1-M9命令来测试和分析LDC1612线圈的性能特性。
## 测试命令总览
| 命令 | 功能 | 响应字节数 | 主要用途 |
|------|------|-----------|----------|
| M1 | 强制读取传感器数据 | 4 | 获取原始传感器数据 |
| M2 | 通信测试 | 4 | 验证通信链路 |
| M3 | 高电流驱动测试 | 6 | 测试提高驱动电流的效果 |
| M4 | 寄存器诊断 | 8 | 检查配置寄存器状态 |
| M5 | 最高电流启动测试 | 8 | 极限参数启动尝试 |
| M6 | 芯片功能验证 | 12 | 验证LDC1612芯片正常工作 |
| M7 | 保守参数测试 | 10 | 使用保守配置测试 |
| M8 | 极端参数测试 | 6 | 使用极端配置强制启动 |
| M9 | 多频率特性测试 | 8 | 对比不同频率配置效果 |
---
## 详细命令分析
### M1 命令 - 强制读取传感器数据
**命令**: `D5 03 02 4D 31 83`
**响应**: `B5 F0 04 [4字节数据] CRC`
**响应数据解析**:
```
[0-3]: 32位原始传感器数据大端序
- 高4位错误标志通常忽略
- 低28位有效传感器数据
```
**使用场景**: 在您已经有工作配置的情况下,直接获取传感器数据
---
### M2 命令 - 通信测试
**命令**: `D5 03 02 4D 32 84`
**响应**: `B5 F0 04 DD CC BB AA [CRC]`
**分析要点**: 如果响应不是固定的`DD CC BB AA`,说明通信有问题
---
### M3 命令 - 高电流驱动测试
**命令**: `D5 03 02 4D 33 85`
**响应**: `B5 F0 06 [6字节数据] CRC`
**响应数据解析**:
```
[0-1]: 传感器状态寄存器(大端序)
bit[7]: DRDY_1 - 通道1数据就绪
bit[6]: DRDY_0 - 通道0数据就绪
bit[5]: UNREAD_CONV - 未读转换结果
bit[4]: ERR_ZC - 零计数错误
bit[3]: ERR_AE - 幅度错误(重点关注)
bit[2]: ERR_WD - 看门狗超时
bit[1]: ERR_OR - 过量程错误
bit[0]: ERR_UR - 欠量程错误
[2]: 数据就绪标志 (0x01=就绪, 0x00=未就绪)
[3]: 0xA0 - 高电流测试标记
[4]: 幅度错误专用标志 (0xAE=有幅度错误, 0x00=无)
[5]: 0x33 - M3命令标记
```
**分析要点**:
- 如果[0-1]从0x0008变为其他值说明高电流有效果
- 如果[2]变为0x01说明数据开始就绪
- 如果[4]变为0x00说明幅度错误消失
---
### M4 命令 - 寄存器诊断
**命令**: `D5 03 02 4D 34 86`
**响应**: `B5 F0 08 [8字节数据] CRC`
**响应数据解析**:
```
[0-1]: 状态寄存器 (0x18) - 当前传感器状态
[2-3]: 传感器配置寄存器 (0x1A) - 传感器工作模式
期望值: 0x1601 (活动模式,单通道)
[4-5]: 驱动电流寄存器 (0x1E) - 当前驱动电流设置
常见值: 0x9000(默认), 0xA000(高), 0xF800(最高)
[6]: I2C读取状态 (0x4F='O'=成功, 0xEE=失败)
[7]: 0x44 - M4命令标记
```
**分析要点**:
- [2-3]应该是0x1601如果不是说明配置异常
- [4-5]显示实际的驱动电流设置
- [6]必须是0x4F否则I2C通信有问题
---
### M5 命令 - 最高电流启动测试
**命令**: `D5 03 02 4D 35 87`
**响应**: `B5 F0 08 [8字节数据] CRC`
**响应数据解析**:
```
[0-1]: 传感器状态寄存器(启动后状态)
[2]: 数据就绪标志 (0x01=就绪, 0x00=未就绪)
[3-4]: 实际驱动电流设置值应该是0xF800
[5]: 幅度错误专用标志 (0xAE=仍有错误, 0x00=错误消失)
[6]: 0x55 - M5命令标记
[7]: 0xF8 - 最高电流标记
```
**分析要点**:
- 这是最激进的启动尝试
- 如果[5]仍是0xAE说明线圈物理特性不兼容
- [3-4]验证电流设置是否生效
---
### M6 命令 - 芯片功能验证
**命令**: `D5 03 02 4D 36 88`
**响应**: `B5 F0 0C [12字节数据] CRC`
**响应数据解析**:
```
[0-1]: 写入测试值 (0x9000)
[2-3]: 读取回的值
[4-5]: 制造商ID (应该是0x5449="TI")
[6-7]: 设备ID (应该是0x3055)
[8-9]: 当前状态寄存器
[10]: ID读取状态 (0x4F=成功, 0xEE=失败)
[11]: 0x66 - M6命令标记
```
**分析要点**:
- [4-5]必须是0x5449确认是正品TI芯片
- [6-7]应该是0x3055确认是LDC1612型号
- [10]必须是0x4F确认芯片通信正常
---
### M7 命令 - 保守参数测试
**命令**: `D5 03 02 4D 37 89`
**响应**: `B5 F0 0A [10字节数据] CRC`
**响应数据解析**:
```
[0-1]: 状态寄存器
[2]: 数据就绪标志
[3-4]: 实际频率分频器设置 (0x2000=较低频率)
[5]: 幅度错误标志 (0xAE=有错误, 0x00=无)
[6]: 欠量程错误标志 (0x01=有, 0x00=无)
[7]: 过量程错误标志 (0x02=有, 0x00=无)
[8]: 0x77 - M7命令标记
[9]: 0x20 - 低频标记
```
**分析要点**:
- 使用保守配置(低频率、长稳定时间)
- [6][7]指示电感值范围问题
---
### M8 命令 - 极端参数测试
**命令**: `D5 03 02 4D 38 8A`
**响应**: `B5 F0 06 [6字节数据] CRC`
**响应数据解析**:
```
[0-1]: 传感器状态寄存器
[2]: 数据就绪标志
[3]: 幅度错误标志 (0xAE=仍有错误, 0x00=错误消失)
[4]: 0x88 - M8命令标记
[5]: 0xEE - 极端测试标记
```
**分析要点**:
- 使用极低频率(0x4000)和最大电流(0xFF00)
- 如果[3]仍是0xAE说明线圈根本无法工作
---
### M9 命令 - 多频率特性测试
**命令**: `D5 03 02 4D 39 8B`
**响应**: `B5 F0 08 [8字节数据] CRC`
**响应数据解析**:
```
[0-1]: 高频测试状态
[2]: 高频就绪标志 (0x01=就绪, 0x00=未就绪)
[3-4]: 低频测试状态
[5]: 低频就绪标志 (0x01=就绪, 0x00=未就绪)
[6]: 0x99 - M9命令标记
[7]: 0xAA - 多频测试标记
```
**分析要点**:
- 对比高频低电流 vs 低频高电流的效果
- 如果某个配置工作,说明找到了合适的参数范围
---
## 线圈诊断流程
### 步骤1: 基础验证
1. 执行M2确认通信正常
2. 执行M6确认芯片功能正常
### 步骤2: 状态诊断
1. 执行M4查看当前配置状态
2. 如果状态寄存器是0x0008说明有幅度错误
### 步骤3: 参数优化测试
1. 执行M3测试高电流是否有改善
2. 执行M5测试最高电流极限启动
3. 执行M7测试保守参数配置
4. 执行M8测试极端参数配置
### 步骤4: 特性分析
1. 执行M9进行多频率对比测试
2. 分析哪种配置最接近成功
### 步骤5: 数据读取
1. 如果找到工作配置执行M1获取数据
2. 如果所有测试都失败,确认线圈不兼容
---
## 常见问题诊断
### 所有命令都显示幅度错误 (0x0008)
**可能原因**:
- 线圈电感值超出范围 (< 1μH > 18mH)
- 线圈Q值过低 (< 5)
- 线圈物理损坏开路或短路
- 线圈周围有金属干扰
**解决方案**:
1. 用万用表测量线圈直流电阻
2. 用LCR表测量线圈电感值和Q值
3. 更换符合规格的线圈
### M6显示错误的设备ID
**可能原因**:
- 使用了非正品芯片
- I2C地址配置错误
- 芯片损坏
### 部分命令有效果但数据不稳定
**可能原因**:
- 线圈参数在边界范围
- 外部干扰
- 电源噪声
**解决方案**:
1. 优化PCB布局
2. 改善电源滤波
3. 调整线圈参数
---
## 推荐线圈规格
```
电感值: 10μH - 1mH
Q值: > 15 (在工作频率下)
线径: 0.1-0.5mm 漆包线
绕制: 单层紧密绕制,避免交叉
工作频率: 1-10MHz
直流电阻: 1-50欧姆
```
---
## 总结
通过这套完整的测试命令您可以
1. 快速诊断线圈兼容性问题
2. 找到最优的工作参数
3. 验证硬件和软件功能
4. 分析线圈的频率特性
如果M8和M9都显示幅度错误强烈建议更换线圈或调整线圈参数