测试执行指南

```bash cd EWARM/CUBE

2026-07-04
测试指南执行流程测试用例

优化效果检测执行指南

快速开始

1. 编译和烧录


# 编译项目
cd EWARM/CUBE
make clean
make all

# 烧录到目标板
# 使用ST-Link或J-Link工具

2. 启用性能监测

确保代码中定义了:


#define ENABLE_PERFORMANCE_MONITORING 1

3. 连接调试工具


测试场景执行

场景1: 低负载测试

测试配置
执行步骤
  1. 启动系统
  2. 连接串口终端
  3. 发送测试命令: TESTLOWLOAD
  4. 等待10分钟
  5. 收集性能报告: GET_REPORT
  6. 保存测试数据
预期结果

场景2: 中等负载测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTMEDIUMLOAD
  4. 等待30分钟
  5. 收集性能报告: GET_REPORT
  6. 保存测试数据
预期结果

场景3: 高负载测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTHIGHLOAD
  4. 监控系统状态
  5. 等待1小时
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景4: 极限脉冲频率测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTEXTREMEPULSE
  4. 监控系统稳定性
  5. 等待10分钟
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景5: 连续UART传输测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTCONTINUOUSUART
  4. 监控UART传输状态
  5. 等待2小时
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景6: 混合负载测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTMIXEDLOAD
  4. 监控所有指标
  5. 等待4小时
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景7: 脉冲丢失测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTPULSELOSS
  4. 周期性中断脉冲输入
  5. 等待30分钟
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景8: UART错误注入测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTUARTERRORS
  4. 注入UART错误
  5. 等待20分钟
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

场景9: 内存压力测试

测试配置
执行步骤
  1. 重启系统
  2. 连接串口终端
  3. 发送测试命令: TESTMEMORYSTRESS
  4. 监控内存使用
  5. 等待1小时
  6. 收集性能报告: GET_REPORT
  7. 保存测试数据
预期结果

性能数据收集

实时性能报告

获取报告命令

GET_REPORT
报告格式

=== Performance Report ===
Elapsed Time: 1000 ms
Interrupt Count: 1000
Interrupt Rate: 1000 Hz
Avg Interrupt Time: 4 us
Max Interrupt Time: 8 us
Min Interrupt Time: 3 us
CPU Utilization: 0.4%
UART TX Count: 10
UART TX Bytes: 100
UART RX Count: 5
UART RX Bytes: 50
Pulse Processed: 100
Buffer Overflow: 0
========================

数据导出

导出CSV格式

EXPORT_CSV
导出格式

Timestamp,InterruptCount,InterruptRate,AvgInterruptTime,MaxInterruptTime,MinInterruptTime,CPUUtilization,UARTTXCount,UARTTXBytes,UARTRXCount,UARTRXBytes,PulseProcessed,BufferOverflow
2026-02-23 10:00:00,1000,1000,4,8,3,0.4,10,100,5,50,100,0

监控和诊断

实时监控

启用实时监控

ENABLE_MONITORING
监控输出

[10:00:00] CPU: 0.4%, Interrupts: 1000/s, UART TX: 10, UART RX: 5
[10:00:01] CPU: 0.5%, Interrupts: 1005/s, UART TX: 11, UART RX: 6
[10:00:02] CPU: 0.4%, Interrupts: 1000/s, UART TX: 10, UART RX: 5

诊断命令

系统状态

STATUS
输出示例

System Status:
- Pulse Processing: ENABLED
- UART TX: IDLE
- Raw Pulse Buffer: 50/300
- Filtered Pulse Buffer: 100/300
- Baseline Valid: YES
- Startup Phase: NO
内存使用

MEMORY
输出示例

Memory Usage:
- Stack: 2048/4096 bytes (50%)
- Heap: 1024/8192 bytes (12.5%)
- Pulse Buffer: 600/600 bytes (100%)
- Filter Buffer: 600/600 bytes (100%)

故障排除

常见问题

问题1: 系统无响应

症状: 串口无输出,系统死机

排查步骤:

  1. 检查电源供应
  2. 检查调试器连接
  3. 检查时钟配置
  4. 查看错误日志

解决方案:

问题2: 性能数据异常

症状: CPU利用率过高或中断时间过长

排查步骤:

  1. 检查脉冲频率
  2. 检查UART负载
  3. 检查中断优先级
  4. 检查DMA配置

解决方案:

问题3: UART数据丢失

症状: UART传输数据不完整

排查步骤:

  1. 检查波特率配置
  2. 检查DMA配置
  3. 检查缓冲区大小
  4. 检查中断优先级

解决方案:

调试技巧

使用逻辑分析仪
  1. 连接逻辑分析仪到UART引脚
  2. 配置触发条件
  3. 捕获UART数据
  4. 分析时序和协议
使用示波器
  1. 连接示波器到脉冲输入引脚
  2. 测量脉冲频率和宽度
  3. 对比系统测量值
  4. 分析误差来源
使用调试器
  1. 设置断点
  2. 单步执行
  3. 查看变量值
  4. 分析执行流程

数据分析

Python分析脚本

安装依赖

pip install pandas matplotlib numpy
运行分析

import pandas as pd
import matplotlib.pyplot as plt

# 读取CSV数据
df = pd.read_csv('performance_data.csv')

# 绘制CPU利用率
plt.figure(figsize=(12, 6))
plt.plot(df['Timestamp'], df['CPUUtilization'])
plt.title('CPU Utilization')
plt.xlabel('Time')
plt.ylabel('CPU Utilization (%)')
plt.grid(True)
plt.savefig('cpu_utilization.png')

# 绘制中断时间
plt.figure(figsize=(12, 6))
plt.plot(df['Timestamp'], df['AvgInterruptTime'], label='Average')
plt.plot(df['Timestamp'], df['MaxInterruptTime'], label='Maximum')
plt.plot(df['Timestamp'], df['MinInterruptTime'], label='Minimum')
plt.title('Interrupt Execution Time')
plt.xlabel('Time')
plt.ylabel('Time (μs)')
plt.legend()
plt.grid(True)
plt.savefig('interrupt_time.png')

# 统计分析
print(df.describe())

测试检查清单

测试前检查

测试中检查

测试后检查


报告模板

测试报告结构

1. 测试概述
2. 测试结果
3. 数据分析
4. 评估结论
5. 改进建议

附录

A. 测试命令参考

命令 描述 参数
TESTLOWLOAD 低负载测试
TESTMEDIUMLOAD 中等负载测试
TESTHIGHLOAD 高负载测试
TESTEXTREMEPULSE 极限脉冲测试
TESTCONTINUOUSUART 连续UART测试
TESTMIXEDLOAD 混合负载测试
TESTPULSELOSS 脉冲丢失测试
TESTUARTERRORS UART错误测试
TESTMEMORYSTRESS 内存压力测试
GET_REPORT 获取性能报告
EXPORT_CSV 导出CSV数据
ENABLE_MONITORING 启用实时监控
STATUS 系统状态
MEMORY 内存使用

B. 性能指标参考

指标 优化前 优化后 改进幅度
中断执行时间 15-25μs <5μs 80%
CPU利用率(1kHz) 1.5-2.5% <0.5% 75%
CPU利用率(10kHz) 15-25% <5% 80%
UART传输延迟 变化 <1ms 显著改善

C. 联系方式


文档结束

本指南将根据测试进展持续更新