一、系统概述
设计实现了一款手持式、双通道、20MHz带宽的数字存储示波器,以TI TMS320F28033 DSP为核心控制器,结合FPGA与高速ADC,构建了集信号调理、高速采集、数据处理与显示于一体的便携式测量仪器。系统采用程控增益放大、DC/AC耦合电子切换(取代传统继电器)等创新设计,实现了高输入阻抗(1MΩ)、小输入电容、低功耗与袖珍体积,适用于现场调试、教学实验、嵌入式开发等场景。
二、系统总体架构
系统采用"模拟前端-高速采集-数据处理-人机交互"四层架构,以FPGA作为高速数据流处理器,DSP负责系统控制与显示,架构如图1所示:
人机交互
数据处理
高速采集
模拟前端
SPI通信
PWM控制
通道1
跟随保持
通道2
跟随保持
DC/AC耦合切换
程控增益放大 PGA
20MHz带宽限制滤波器
高速ADC ADS62P22
FPGA
数据存储与触发控制
TMS320F28033 DSP
数字校准、波形处理、测量计算
LCD显示
320×240 TFT
触摸输入
电阻式触摸屏
用户界面
1. 核心模块功能
-
模拟前端:双通道独立调理,包括输入保护、跟随保持、DC/AC耦合切换、程控增益放大(PGA)、20MHz抗混叠滤波器。
-
高速采集 :采用ADS62P22双通道12位ADC(最高采样率65MSPS),由FPGA控制采样时序与数据缓存。
-
数据处理:FPGA实现实时触发、数据缓冲;TMS320F28033 DSP进行数字校准、波形运算(FFT、测量参数)、系统控制。
-
人机交互:3.5英寸TFT LCD(320×240)显示波形与参数,电阻触摸屏实现触控操作(时基、幅度、触发设置)。
三、硬件设计:高精度与低功耗
3.1 模拟前端电路设计
3.1.1 输入级保护与耦合
-
输入保护:采用双向TVS管(SMBJ5.0A)与串联电阻(1kΩ),限制输入电压在±5V以内,防止过压损坏。
-
DC/AC耦合切换 :使用模拟开关(如ADG1636) 替代传统继电器,通过FPGA IO控制,实现电子切换,体积小、寿命长。DC耦合直通;AC耦合通过0.1μF电容隔直。
3.1.2 程控增益放大(PGA)
-
核心芯片 :采用压控增益放大器(如AD603) 或数字PGA(如PGA112),增益范围-6dB~+24dB,由FPGA产生的PWM经滤波后的直流电平控制。
-
增益档位:×1、×2、×5、×10、×20、×50(对应垂直灵敏度20mV/div~5V/div)。
3.1.3 带宽限制滤波器
- 抗混叠滤波器:20MHz 5阶巴特沃斯低通滤波器(LC或RC有源),确保在65MSPS采样率下无频谱混叠。
3.2 高速采集模块
-
ADC选型 :ADS62P22(双通道12位,65MSPS,SNR=70dB),差分输入,LVDS输出,直接连接FPGA。
-
采样时钟:由FPGA内部PLL产生65MHz时钟(稳定性±10ppm),驱动ADC采样。
3.3 FPGA与DSP协同设计
| 模块 | 型号/参数 | 功能说明 | 接口设计 |
|---|---|---|---|
| FPGA | Xilinx Spartan-6 XC6SLX9 | 1. 接收ADC数据流(LVDS) 2. 实现触发逻辑(边沿、脉宽) 3. 数据缓冲(内部Block RAM) 4. 通过SPI向DSP传输数据 | 与ADC:LVDS差分对(8对) 与DSP:SPI(20MHz) 控制PGA:PWM+GPIO |
| DSP | TMS320F28033(60MHz,64KB Flash) | 1. 系统控制(时基、增益、触发) 2. 数字校准(增益/偏移校正) 3. 波形处理(FFT、测量) 4. 驱动LCD与触摸屏 | 与FPGA:SPI(主模式) 与LCD:GPIO模拟8080总线 触摸屏:内部ADC采样 |
3.4 电源管理
-
电源架构 :单节18650锂电池(3.7V)输入,通过TPS650243电源管理芯片产生:
-
+1.8V(FPGA内核)
-
+3.3V(DSP、LCD、数字电路)
-
+5V(模拟前端、ADC)
-
±5V(PGA运放)
-
-
低功耗设计:空闲时关闭ADC与FPGA部分电源,DSP进入IDLE模式(电流<10mA)。
四、软件设计:实时处理与触控交互
4.1 FPGA逻辑设计(Verilog/VHDL)
4.1.1 触发控制
-
触发模式:边沿触发(上升/下降)、视频触发、脉宽触发。
-
触发逻辑:比较器实时监控ADC数据,当满足触发条件时,启动存储(预触发/后触发)。
4.1.2 数据缓冲与传输
-
双端口RAM:深度32K×12bit(每通道),存储一帧波形数据。
-
SPI传输:FPGA作为从机,DSP读取数据时,通过SPI以20MHz速率传输(32K点传输时间约13ms)。
4.2 DSP软件设计(C语言,CCS开发环境)
4.2.1 系统初始化流程
c
void System_Init(void) {
// 1. 时钟初始化(PLL=60MHz)
InitSysCtrl();
// 2. GPIO初始化(LCD、触摸、SPI)
InitGpio();
// 3. SPI初始化(与FPGA通信)
Spi_Init();
// 4. ADC初始化(触摸屏采样)
Adc_Init();
// 5. LCD初始化(320×240 TFT)
LCD_Init();
// 6. 加载校准参数(EEPROM)
Load_Calibration_Data();
}
4.2.2 数字校准算法
-
增益校准:输入标准信号(如1Vpp/1kHz),计算实际增益误差,存储校正系数。
-
偏移校准:短接输入,测量ADC零点偏移,软件补偿。
4.2.3 波形处理与测量
-
FFT频谱分析:1024点FFT(使用DSP库函数),显示幅度谱(0~32.5MHz)。
-
自动测量:峰峰值、频率、周期、占空比、上升时间等(基于波形数据实时计算)。
4.2.4 触控界面设计
-
界面布局:顶部网格显示波形,底部软键盘(时基、幅度、触发设置)。
-
触摸识别:电阻屏分压采样(X+, X-, Y+, Y-),通过DSP内部ADC读取坐标,去抖算法处理。
4.3 DSP与FPGA通信协议(SPI)
-
命令帧 (DSP→FPGA):
0xA5 + 命令码 + 参数(如设置触发模式、读取数据)。 -
数据帧 (FPGA→DSP):
0x5A + 通道 + 数据长度 + 波形数据(12bit)。
参考代码 基于TMS320F28033的20MHz手持式双踪袖珍示波器 www.youwenfan.com/contentcss/134563.html
五、系统测试与性能指标
5.1 关键性能测试
| 测试项 | 测试方法 | 指标 |
|---|---|---|
| 带宽 | 输入正弦波,-3dB点频率 | 20MHz(-3dB) |
| 采样率 | 最高采样时钟频率 | 65MSPS(单通道) 32.5MSPS(双通道交替) |
| 垂直灵敏度 | 最小可测电压 | 2mV/div(×50增益) |
| 输入阻抗 | 1kHz信号,测量输入电压比 | 1MΩ±2% // 15pF |
| 时基范围 | 可设置扫描速度 | 10ns/div ~ 1s/div |
| 触发灵敏度 | 最小触发信号幅度 | 1div(全带宽) |
| 功耗 | 锂电池供电,测量整机电流 | 工作:<150mA(3.7V) 待机:<20mA |
| 续航时间 | 2000mAh锂电池 | 连续工作≥4小时 |
5.2 实际测试波形
-
正弦波:1MHz/1Vpp,显示无失真,FFT显示基波清晰。
-
方波:100kHz/2Vpp,上升时间≤17.5ns(对应20MHz带宽)。
-
视频信号:NTSC复合视频(CVBS),触发稳定,可观测行同步。
六、设计特点与创新
-
袖珍便携:整机尺寸120mm×70mm×25mm,重量约200g(含电池),真正手持。
-
高输入阻抗:1MΩ//15pF,减少对被测电路影响。
-
电子耦合切换:模拟开关替代机械继电器,体积小、寿命长、无噪声。
-
数字校准:软件实现增益/偏移校准,无需电位器,提高长期稳定性。
-
低功耗设计:动态电源管理,续航时间≥4小时。
七、扩展方向
-
存储深度提升:外接SRAM(如IS61LV25616),将存储深度从32K点扩展至256K点。
-
通信接口:增加USB(CDC类)或Wi-Fi(ESP8266),实现波形导出与远程控制。
-
高级触发:增加串行总线触发(I2C、SPI、UART)与协议解码。
-
电池管理:集成充电管理(TP4056)与电量显示。
八、总结
基于TMS320F28033 DSP与FPGA协同架构,实现了20MHz带宽、双通道手持示波器。通过程控增益放大、电子耦合切换、数字校准等关键技术,在袖珍体积下实现了高性能测量。硬件采用模块化设计(模拟前端、高速采集、处理显示),软件实现实时触发、波形处理与触控交互,整体功耗<150mA,续航≥4小时,为现场工程师提供了一款便携、实用的测量工具。