【数据采集专栏】触发模式的设计

目录

简介

实现原理


简介

单次触发(FiniteTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行一次触发和采集,然后停止。该触发方式适用于只需要单次采集特定事件并对采集结果进行分析的情况;

正常触发(NormalTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行触发和采集。该触发方式适用于低重复率信号;

自动触发(AutoTrig):在该触发方式下,如果未到指定的触发条件,将强制进行触发和采集以显示波形。该触发方式适用于未知信号电平或需要显示直流的场景

实现原理

FiniteTrig 单次触发

抓单次瞬态脉冲

抓上电 / 掉电波形

抓单次异常事件

色选机:单次物料测试

NormalTrig 正常触发

低速率、间歇性信号

随机脉冲

不想看到空波形

没触发就不采集,节省资源

AutoTrig 自动触发

调试未知信号

直流信号(不会触发边沿)

示波器必须一直显示波形

找不到触发时强制刷新

module trig_ctrl

(input wire clk,

input wire rst_n,

input wire trig_cond, // 触发条件满足

input wire 1:0 trig_mode,// 00:Finite 01:Normal 10:Auto

output reg capture_en // 采集使能

);

localparam FINITE = 2'b00;

localparam NORMAL = 2'b01;

localparam AUTO = 2'b10;

reg 1:0 state;

reg 23:0 timeout_cnt; // 自动触发超时计数器

always @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

state capture_en timeout_cnt

end

else begin

case(state)

0: begin // 等待触发

timeout_cnt

if(trig_cond) begin

// 检测到真实触发

capture_en state

end

else if(trig_mode == AUTO && timeout_cnt > 1000000) begin

// 自动触发:超时强制采集

capture_en state

end

end

1: begin // 正在采集

capture_en

case(trig_mode)

FINITE: state NORMAL: state AUTO: state

endcase

end

2: begin // 单次触发完成,停止

capture_en

end

endcase

end

end

endmodule

相关推荐
第二层皮-合肥2 小时前
【数据采集专栏】通道触发设计要点
fpga开发
高速上的乌龟2 小时前
Lattice LFCPNX-100 HSB+Fpga开发详解:2.4 Hololink I2C外设控制深度全解析
fpga开发
Kent Gu3 小时前
MCU & FPGA调试
单片机·嵌入式硬件·fpga开发
浩子智控4 小时前
EtherCAT技术概述
嵌入式硬件·fpga开发·硬件工程·信号处理
我爱C编程5 小时前
【仿真测试】基于FPGA的8ASK扩频通信链路实现,包含帧同步,定时点,扩频伪码同步,信道,误码统计
fpga开发·帧同步·定时点·扩频通信·8ask·扩频伪码
德思特5 小时前
软件定义GNSS模拟器技术原理与优势深度解析
fpga开发
GateWorld6 小时前
LCD显示技术完全指南:原理·制造·驱动·FPGA实现之点屏四 LVDS
fpga开发·lcd显示·fpga点亮屏幕·minilvds
第二层皮-合肥21 小时前
【数据采集专栏】利用TDC提高外部触发精度
fpga开发
尤老师FPGA1 天前
HDMI数据的接收发送实验(十三)
fpga开发