D223的SRAM硬件记录仪:外部触发与瞬态波形捕获方案

在线采集靠USB实时上传,但遇到雷击、开关浪涌等瞬态事件,USB带宽和延迟根本来不及。D223的SRAM硬件记录仪就是为了解决这个问题而设计的。


一、为什么需要SRAM记录仪?

D223有两种工作模式[note_63]:

enum _deviceWorkMode {
    _deviceWorkMode_Stop = 0x00,          // 空闲停止
    _deviceWorkMode_sendBusy,             // 发送忙
    _deviceWorkMode_sramRecord,           // SRAM记录中
    _deviceWorkMode_getSramRecord,        // 读取SRAM记录
    _deviceWorkMode_onlineRecord,         // 在线实时采集
    _deviceWorkMode_adcCalib = 0xff,      // ADC校准模式
};

在线采集模式:FPGA控制AD7606采样 → STM32通过QSPI读取 → 双缓冲打包 → USB实时上传。适合连续监测,但受USB带宽限制。

SRAM记录仪模式:FPGA直接将ADC数据写入板载SRAM,不走USB,等采集完成后再由STM32读取上传。适合捕捉瞬态事件。

核心区别在于:SRAM记录时数据路径不经过STM32和USB,完全由FPGA硬件控制,响应速度极快。


二、SRAM记录仪的工作流程

2.1 配置阶段

上位机设置以下参数后点击"开始采集"[word_5]:

  • 采样率
  • 采集时间(ms)
  • 通道使能状态
  • 是否使用DIN外部触发

这些参数通过USB写入采集卡,FPGA进入待触发状态。

2.2 触发阶段

SRAM记录仪支持外部DIN触发功能[word_5]:

  • DIN输入为PNP型
  • 需要NPN型数字接口对其接地边沿触发
  • 最简单的NPN接口:通过一个开关和数字输入的GND短接
  • 板载DIN输入灯亮的瞬间触发记录仪开始采集

D223固件中,dio_tim_task()每1ms扫描8路DI输入状态,检测到配置的触发边沿后调用fun_dinTrig_StartSramRecord()启动记录[word_4]。

2.3 采集阶段

FPGA按照预设的采样率和采集时间进行采集,数据直接写入SRAM。采集过程中,"已采集时间"按秒累加显示[word_5]。

2.4 读取阶段

采集完成后,STM32切换到读取SRAM模式[note_63]:

// 1. 通知FPGA停止记录
_regA2FMap.REG_SRAM_WORK_STATE1 = 2;
fpga_write_register();

// 2. 循环读取SRAM并通过USB上传
while(未读完) {
    QSPI_ReadDatas_DMA(0xEB, 6, ...);  // 从SRAM读取数据
    usb_sendMsg(...);                   // USB上传
}

QSPI命令码0xEB用于读取SRAM记录数据,使用24位地址、6个dummy cycle[note_63]。

SRAM记录的数据可以多次读取,不容易因为误码导致数据丢失[word_5]。


三、采样率档位与资源限制

SRAM记录仪的采样率受通道数和功能使能情况影响[word_5]:

条件最大SRAM采样率
开启1~2个ADC通道35K
开启3~4个ADC通道30K
开启>4个ADC通道25K
同时开启DAC或PWM功能10K

注意:以上为DABL-7606的SRAM档位限制。D223由于采用FPGA+STM32H743架构,SRAM采样率能力有所提升,但具体档位以最新固件为准[word_5][note_63]。


四、SRAM记录仪 vs 在线采集对比

对比项在线采集SRAM记录仪
数据路径FPGA→QSPI→STM32→USBFPGA→SRAM(不经过STM32)
触发方式软件启动软件启动 / 外部DIN硬件触发
响应延迟受USB调度影响硬件触发,纳秒级响应
数据上传实时连续上传采集完成后批量上传
适合场景连续监测瞬态事件捕获(雷击、浪涌等)
多次读取不支持支持,可反复读取

五、应用场景

场景1:变电站雷击波形捕获

客户需要在变电站捕捉雷击波形,USB实时传输来不及。使用SRAM记录仪模式:

  1. 上位机配置采样率和采集时间
  2. 使能DIN外部触发
  3. 雷击发生时,DIN信号触发FPGA开始记录
  4. 记录完成后,STM32读取SRAM数据上传
  5. 波形完整保存,触发前后数据均可获取

场景2:开关浪涌捕捉

机械开关动作时产生的浪涌波形持续时间极短,通过SRAM记录仪的外部触发功能可以精确捕捉。

场景3:长时间离线记录

采集卡与上位机断开连接时,数据可以先存入SRAM,后续再连接上位机读取[word_5]。


六、当前功能状态

注意:SRAM环形缓冲自动捕获异常事件功能目前尚未开发[note_244]。当前SRAM记录仪支持的是单次触发记录模式,不支持自动循环捕获异常事件的环形缓冲模式。


七、总结

D223的SRAM硬件记录仪通过FPGA直接写SRAM的方式,绕过了USB带宽瓶颈,实现了对瞬态事件的精确捕获。配合外部DIN触发功能,可以满足雷击、浪涌等微秒级事件的波形记录需求。

核心设计思路:在线采集解决"看实时",SRAM记录仪解决"抓瞬间",两种模式互补


下篇预告:《D223的标定系统与FRAM非易失存储:两点校准如何实现0.01%FSR精度》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值