林凡强,张俊斌
LIN Fan-qiang, ZHANG Jun-bin
(成都理工大学,成都 610059)
自然界运行着多种形式的波,如声波、地震波、波浪等等。通过传感器进行信号变换后,就能将这些信号转变为示波器可进行观察、研究和分析的电信号。如今数字示波器迅速普及,已经成为各行业工程师必备的工具之一,示波器的功能越来越多,构造也越来越复杂。
本文从对存储式数字示波器基本概念出发,设计了具有示波器基本功能的波形显示和实时存储系统。其硬件电路包括信号调理电路、ADC采样与存储电路、采样时钟产生电路、信号整形电路、测频电路、键盘和T6963C[1~4]液晶接口电路。系统采用TI公司的双MSP430[5,6]系列双MCU作为系统的核心。F149主要完成电路的控制、测频和发送数据。F169主要完成波形的显示和波形参数的显示。
简易数字式存储示波器框图如图1所示。系统主要包括了模拟信号的前端处理、信号的采样、数据的实时存储与显示和键盘输入控制。
图1 系统框图
A/D采集是系统非常重要的环节[7],但是信号具体是什么样的,对于系统来说是不可预知的,因此就需要对来源信号进行预处理,在这主要是对信号的幅度进行分析,使得被测信号的幅度能恰好在系统AD转换器的采样幅值范围内,即:微弱的信号进行适当的放大,过高的信号进行适当的衰减,同时,起到对系统后级电路的过压保护。
通过键盘进行LCD显示的控制,使得波形能完整的显示,示意波形如图2所示。
图2 预处理后波形图
其中:Vm表示ADC的输入最大值;
Vn表示ADC的输入最小值。
由此,得到信号调理的流程框图,如图3所示。
依据图3中各个框图,设计了如图4所示的无源衰减网络,提供了1MΩ的输入阻抗,继电器RE1的开关状态代表信号的耦合方式,电容CP1~CP4为补偿电容,通过调节CP1和CP2可使高频信号获得最佳的补偿。输入信号衰减倍数由多路复用器MAX379和继电器RE2配合完成。MAX379的控制端A0、A1由单片机控制,用来以满足不同的采样速度[8],流水线型的ADC输出大都是并行接口,另外,就需要确定ADC的位数,由于系统采用的是240×128的液晶屏,垂直分辨率最大128点。由此,采用8位的ADC分辨率为256点已经足够了,综合上述条件我们选择设置垂直灵敏度档A0、A1的控制字,选择输入信道。
图3 信号调理框图
图4 无源衰减网络
要得到图2的波形,还需要电位平移电路和峰值检测电路。电平移位电路由运算放大器构成的加法电路实现,如图5给出可同时进行峰值和谷值采样的电路。
主放大器采用的是专用可编程增益放大器PGA205,增益档级为1、2、4、8V/V,由可编程引脚A0和A1控制,最大增益误差为±0.05%。电路芯片经激光校正,最大失调电压仅50uV,失调温漂为0.25uV/℃。
图5 峰值检测电路
示波器需要的ADC应具有宽范围的采样频率TI公司高速的AD转换器ADS830E,采样频率为10kSa/s~ 60MSa/s。
存储器我们选择了常见的FIFO存储器IDT7204,容量为4K,成品示波器都有存储深度这个指标,具体是指示波器所能存储的采样点多少的量度。之所以要加FIFO存储器是因为ADC的工作频率远远高于单片机的速度。为了FIFO与ADC同步工作,FIFO的写输入端由74HC08间接控制。
ADS830E的RSEL引脚用来控制输入电压范围,当RSEL引脚为高电平时,ADS830E的输入电压范围是1.5V~3.5V,即2Vpp。当RSEL引脚为低电平时ADS830E的输入电压范围是2V~3V,即1Vpp。我们选择了输入电压范围为2Vpp。其操作时序参考器件的数据使用手册,由时序图得知在时钟的每个周期都进行一次AD转换,所以采样速率就是时钟频率,能够很方便地通过控制采样时钟来控制采样频率。
图6 AD转换及存储
另外,简要介绍一下FIFO关键的引脚,22脚(RS)复位引脚,低电平有效,复位时内部的读指针和写指针都被设置到初始位置,在上电后在写操作之前我们有必要复位一下器件。第8脚(FF)满标志,FIFO存储器存满时,写操作被禁止,FF被拉低;当FF为高时表明FIFO没有存满。第21脚(EF)空标志,当读指针和写指针相等时,表明FIFO为空,标志位置低。
基于扫描式的矩阵键盘,效率比较低,而且占用过多的I/O口资源。本系统中采用了ZLG7290键盘专用芯片,实现硬件抖动、连击处理等功能,避免了繁琐的软件去抖动和连续扫描。ZLG7290是I2C接口的芯片,其操作简单,在此不再赘述。
本系统中用到的是由东芝公司的T6963C为控制器的240×128图形点阵式液晶。液晶显示器的可编程引脚都由从机MSP430F169对应的引脚连接,具体连接如图7所示。
图7 液晶接口电路
为进行较为精确的频率测量,系统采用了多周期测频法,之所以能够比较精确测频,关键是设置计数器,而相关计数器的实质,就是测量的fx的脉冲个数。如图8所示为系统的测频电路。
图8 测频电路
与非门CD4011的输出端接到F149的P1.0口作定时器A的输入时钟完成对fx脉冲的计数,P1.3口用定时器控制输出脉冲实现预置闸门的功能。
主机系统路的控制和测频,并通过SPI总线将数据传输到从机。以下这部介绍这几部分程序的设计。控制及图形显示流程如图9所示。
图9 主机流程图
由信号调理电路继电器RE1就是用来控制耦合方式的。先给出硬件层(硬件层的含义是通过参数控制引脚直接对硬件进行操作)的代码如下:
系统在进行对被测信号进行的同时,负责控制部件的单片机F149同时进行键盘的处理。
测频需要初始化定时器A和定时器B以及需要单片机产生一个闸门信号。如下给出测频程序。
主机和从机通过SPI总线进行通信,MSP430具有硬件的SPI接口,SPI接口分为3线制和4线制,本系统的两个MCU之间采用3线制接口方式通信。下面给出发送频率值的函数:
ADS830E的中心电压是2.5V对应的输出10000000也就是128[9],一屏的数据为160个。用程序进行打点时,在液晶上基线值为64。于是从IDT7204读取值temp与液晶点的位置locate坐标关系为。Locate=64-(temp-128)。于是locate=192-temp。下面给出画波形的函数。
网格的绘制就是为了画出一个T6963C控制器LCD显示模块的波形显示区[10],网格的边框用实线绘制,里面内部用虚线绘制,这样显示就比较美观。系统采用了用液晶取模软件,手工打点绘制波形图,如图10所示为实际工作时,对信号源进行采样的图形显示。
图10 示波器显示
测试效果说明整体设计方案是正确的,各项功能均在系统中实现。设计中由于采用了双端口RAM,所以系统的实时反应较快,这是本设计的一个特色,这样可使系统的复杂程度大大降低,提高了系统性能。采用双MCU控制方式是本系统的另一大特色,两个MCU分别独立控制各自的功能,F149负责电路的控制和测频,F169主要负责显示。经测试,被测波形很很好地显示在240×128液晶上,通过输入TTL波形明显看出交直流耦合的区别,键盘与液晶提供了很好的人机接口,键盘调节波形的幅度和频率,可以在液晶上实时看到波形的变化,具有一定的参考价值。
[1]朱清慧, 陈绍东, 徐志强. 基于图形液晶显示器的汉字显示系统设计与仿真[J]. 液晶与显示, 2009, 24(5): 692-697.
[2]胡汉梅. 基于DSP图形液晶显示器接口程序设计[J]. 液晶与显示, 2007, 22(3): 115-119.
[3]李恒, 张云生. Proteus平台下内置T6963C液晶模块的驱动仿真[J]. 云南民族大学学报, 2008, 18(2): 180-183.
[4]袁满. 基于T6963C的液晶显示编程的实现[J]. 自动化技术与应用, 2007, 26(9): 110-112.
[5]MSP430F149 datasheet[EB/OL].http://www.ti.com.
[6]沈建华, 杨艳琴, 翟晓曙. MSP430系列16位超低功耗单片机原理与应用[M]. 北京: 清华大学出版社, 2004: 289-195.
[7]唐曦. 虚拟示波器用于大学物理实验教学的探索[J]. 西南师范大学学报: 自然科学版, 2011(2): 190-193.
[8]韩红芳, 孙守昌. 随机等效采样算法在数字存储示波器上的实现[J]. 制造业自动化, 2011(24): 59-61.
[9]ADS830 datasheet[EB/OL]. http://www.ti.com.
[10]T6963C datasheet[EB/OL]. http://www.toshiba.com.cn.
[11]IDT7204 datasheet[EB/OL]. http://www.idt.com.