一种扫描模式下的三维映射方法与流程

文档序号:14218035阅读:188来源:国知局

本发明属于波形显示技术领域,更为具体地讲,涉及一种扫描模式下的三维映射方法。



背景技术:

扫描模式是示波器在慢速时基档位时的一种特殊显示方式。由于示波器的屏幕刷新周期基本固定不变,当时基档位较大即处于慢速时基档位时,采集一幅波形所需要的时间会大于屏幕刷新周期。此时,将屏幕刷新周期内采集到的数据全部读取出来,仍然不能构成一幅完整波形,这样通常采用“扫描模式”来显示波形。

扫描模式下的波形显示方式是,新采集的波形出现在屏幕最右侧,先前采集的波形向左移动对应时间长度。波形连续更新时,就会形成波形从屏幕右侧向屏幕左侧移动的显示效果。

现代数字示波器显示方面的技术也在不断的提升,现阶段高端的数字示波器一般都具有波形的荧光显示效果。这种荧光显示效果是通过三维映射技术将多幅波形通过概率统计、叠加处理后实现的。它的优点在于不仅能看到波形幅度随时间变化的关系,还能表现出某个特定时间点波形幅度出现的概率。

然而,三维映射需要在一个屏幕刷新周期内采集到多幅波形,但传统的扫描模式下,数字示波器处于慢速时基档,采集一幅波形的时间较长,一个屏幕刷新周期都无法采集到一幅完整的波形。因此,扫描模式下无法获得多幅波形进行三维映射,也就没有了波形荧光的效果。



技术实现要素:

本发明的目的在于克服现有技术的不足,提出一种扫描模式下的三维映射方法,以实现慢速时基档即扫描模式下波形显示的荧光效果。

为实现上述发明目的,本发明扫描模式下的三维映射方法,其特征在于,包括以下步骤:

(1)、采集数据的读取

1.1)、设置数字示波器的实时采样率fs为:

其中,dr为数字示波器屏幕每一列需要映射的点数,n为数字示波器屏幕上每个水平网格对应的列数,b为时基档即一个水平网格代表的时间;

数字示波器以实时采样率fs对输入信号进行采集,并存入fifo存储器中;

1.2)、当屏幕刷新信号到来时,fifo存储器中未被读取的采集数据总点数为d′s,读取出其中前ds个采集数据,其中:

ds=d′s-d′s%dr(2)

式(2)中,%表示取余数;

(2)、三维压缩映射

2.1)、数值复位

三维数据库中引入一个标志位x,它指三维压缩映射的列位置,对从标志位x所指的列开始复位即从地址x×ry到地址x×ry+as-1的as个地址写入数据0,当地址x×ry+as-1大于等于rx×ry即超出三维数据库地址范围时,则相应的地址变为:x×ry+as-1-rx×ry;其中,rx为数字示波器的垂直方向分辨率,ry为数字示波器的垂直方向分辨率,复位地址数as为:

2.2)、数据映射

依次对步骤(1)读取的ds个采集数据进行数据映射:将采集数据对应的三维数据库地址y中的数值读出加1,再写回三维数据库地址y中;

三维数据库地址y为:

y=(x×ry)+(ry-v-1)(4)

其中,v为采集数据的值;

数据映射过程中,每dr个采集数据数据映射完后,更新标志位x:x=x+1,如果x+1等于rx,则x=0;

(3)、导入显存

所有ds个采集数据完成数据映射后,将三维数据库的数值从标志位x对应列即起始地址x×ry开始导入显存(简称导数),当到地址(rx×ry)-1后,紧接着从地址0继续,直到地址x×ry-1结束,以进行波形显示,然后返回到步骤1.2),进行下一次的三维压缩映射。

本发明的目的是这样实现的。

数字示波器屏幕上两个像素点之间代表了一定时间,此时间的倒数即此时波形需要的采样率。本发明扫描模式下的三维映射方法,通过用比这个采样率高dr倍的采样率对输入信号进行采集,就会在两个像素点间隔的时间内得到更多的采样点即dr个采集数据,将这些采集数据都映射在屏幕的同一列上即可实现波形显示的荧光效果。同时,为实现屏幕上波形的从右边往左边滚动的扫描效果,将三维数据库(用于记录lcd各位置上采样点出现的概率信息)的地址设计成一个首尾相连的结构,并设置一个三维数据库的标志位,每次屏幕刷新时,读取未被读取的采集数据中前ds个采集数据,从标志位开始更新(复位和映射)相应的三维数据库,并且标志位也随之更新,保持标志位始终指向的是需要更新列的地址。波形显示时,将三维数据库的数值导入显存,且从标志位指向地址开始导入显存,至地址标志位列前一列结束,使得屏幕上最左侧的波形始终是最旧的,而最右侧的波形始终是最新的,这样实现了扫描模式下三维映射,让数字示波器在慢速时基档也可呈现出荧光显示效果。

附图说明

图1是应用本发明的数字示波器一种具体实施方式的原理框图;

图2本发明扫描模式下的三维映射方法一种具体实施方式流程图;

图3是三维数据库一具体实施方式地址编排示意图;

图4是数值复位、数据映射以及导入显存示意图,其中,(a)为三维压缩映射前的三维数据库、(b)为数值复位后的三维数据库、(c)为数据映射后的三维数据库、(d)为导入显存后的显存;

图5是三维数据库与显存中导入显存时的地址变换以及波形显示示意图,其中,(a)为第一次三维压缩映射后的三维数据库、b)为第二次三维压缩映射后的三维数据库、(c)为第三次三维压缩映射后的三维数据库、(d)为第一次导入显存后的显存、(e)为第二次导入显存后的显存、(f)为第三次导入显存后的显存。

具体实施方式

下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。

本发明核心是在扫描模式下,采用较高的采样率去采集数据,使得数字示波器屏幕上两个像素点之间代表的时间间隔对应多个采集数据,再使用三维映射技术,将这多个采集数据映射到数字示波器屏幕同一列的像素点上,实现了波形的荧光效果。在本发明中,引入标志位实现三维映射的同时,实现扫描显示效果。

图1是应用本发明的数字示波器一种具体实施方式的原理框图。

在本实施例中,如图1所示,数字示波器由adc1、fpga、dsp3、lcd6及第一显存7、第二显存8构成。其中,fpga中包括fifo存储器2、读写使能产生模块4以及三维映射模块5。

adc1对输入信号进行采集,并将采集数据输出fifo存储器2中。在本实施例中,读写使能产生模块4产生写使能信号wen,使得fifo存储器2的写使能始终打开,表示数字示波器一直在进行数据采集。dsp3控制整个数字示波器的运行,每个循环发送一个屏幕刷新信号update,通过读写使能产生模块4产生读使能信号ren,将fifo存储器2中未被读取的采集数据送入三维映射模块5做三维压缩映射。三维压缩映射后三维数据库的数值交替导入到第一显存7、第二显存8中,当一个显存导入时,另外一个显存在三维映射模块5的控制下,将显存数据送入数字示波器屏幕进行波形显示,本实施例中,数字示波器屏幕采用lcd6。显存的导入以及屏幕的波形显示属于数字示波器的现有技术,在此不再赘述。

图2是本发明扫描模式下的三维映射方法一种具体实施方式流程图。

在本实施例中,如图2所示,本发明扫描模式下的三维映射方法包括以下步骤:

步骤s1:采集数据的读取

步骤s1.1:设置数字示波器的实时采样率fs为:

其中,dr为数字示波器屏幕每一列需要映射的点数,n为数字示波器屏幕上每个水平网格对应的列数,b为时基档即一个水平网格代表的时间。

在本实例中,数字示波器屏幕每一列需要映射的点数为100,即dr=100,数字示波器屏幕上每个水平网格对应的列数50,即n=50。当前时基档选择500ms/div,则根据公式(1),当前数字示波器的实时采样率fs为:

这样,数字示波器以实时采样率10kspsfs对输入信号进行采集,并存入fifo存储器中。

步骤s1.2:当屏幕刷新信号到来时,fifo中未被读取的采集数据总点数为d′s,读取出其中前ds个采集数据,其中:

ds=d′s-d′s%dr(2)

式(2)中,%表示取余数。

数据采集过程中,一边等待屏幕刷新信号的到来,一边对采集数据进行计数。当屏幕刷新信号到来时,可以得到本次采集数据总点数d′s,为了方便后面三维压缩映射时能完整的完成一列,需要保证三维压缩映射的总点数为每一列点数的整数倍,所以需要将d′s减去一个值,使得三维压缩映射的采集数据点数ds是数字示波器屏幕每一列需要映射的点数dr的最大整数倍数,如公式(2)所示。而多余的采集数据留到下一个循环进行三维压缩映射,设剩余的采集数据点数为do,新一次采集即上一次屏幕刷新信号与新一次屏幕刷新信号之间获取的采集数据点数为dn,则新一次屏幕刷新信号到来时,采集数据总点数为d′s为d′s=dn+do。

由于采集数据总点数d′s即为屏幕刷新信号到来时未被读取的采集数据总点数,因此,本发明中称之为采集数据总点数为d′s。同时,由于采集数据始终存储在fifo存储器中,且fifo存储器不会被复位,故这些剩余的采集数据不会丢失。此外,尽管三维压缩映射过程中adc仍然在不停的采集数据,但数据采集的速度慢,fifo存储器始终不会写满,这就保证了采集数据的连续完整性。

在本实施例中,第一次屏幕刷新信号到来时,采集到415个采集数据,这些都是未被读取的采集数据,即d′s=415,根据公式(2),则数字示波器屏幕每一列需要映射的点数dr=100,需要读取的前400个采集数据,即ds=400。

步骤s2:三维压缩映射

步骤s2.1):数值复位

三维压缩映射阶段,首先需要根据需数据映射的列数复位三维数据库的相应地址,即往相应sram地址写数据0,三维数据库的sram地址编排,根据数字示波器屏幕实际大小确定,数字示波器屏幕水平方向分辨率为rx,垂直方向分辨率为ry。在本实施例中,如图3所示,以垂直方向分辨率ry为240、水平方向分辨率为rx为800绘制的三维数据库sram地址安排。下面均该三维数据库为例对本发明进行说明。

因为屏幕刷新是以列为单位的,所以数值复位与数据映射的地址数都要为ry的整数倍,复位的地址数as与采集数据个数ds之间的关系如下:

在本实施例中,复位的地址数as为:

在本发明中,三维数据库中引入一个标志位x,它指向三维压缩映射的列位置,其取值范围为0~rx。在本实施例中,取值范围为0~799,初始值为0。对从标志x位所指的列开始复位即从地址x×ry到地址x×ry+as-1的as个地址写入数据0,当地址x×ry+as-1大于等于rx×ry即超出三维数据库地址范围时,则相应的地址变为:x×ry+as-1-rx×ry。在本实施例中,若超过最大地址191999,则从0地址继续进行复位。

在本实施例中,如图4所示,标志位x=500,那么三维数据库需要复位的地址为:地址x×ry到地址x×ry+as-1的as个地址,即地址500×240到地址500×2400+960-1的960个地址,也就是,复位地址从地址120000到地址120959。三维数据库复位前后的波形数据如图4(a)、(b)所示,其中,黑色方框表示有波形数据,白色方框表示,没有波形数据。

步骤s2.2):数据映射

依次对步骤s1读取的ds个采集数据进行数据映射:将采集数据对应的三维数据库地址y中的数值读出加1,再写回三维数据库地址y中;

三维数据库地址y为:

y=(x×ry)+(ry-v-1)(4)

其中,v为采集数据的值;

数据映射过程中,每dr个采集数据数据映射完后,更新标志位x:x=x+1,如果x+1等于rx,则x=0。

数值复位完成后进入数据映射,在本实施例中,采集数据的取值大小范围为0~256,其表示的是波形幅度值。为了与三维数据库的行数匹配,将大于ry-1,即239的值都当作ry-1即239。则采集数据对应的三维数据库地址y为:

y=(x×ry)+(ry-v-1)=(500×240)-(240-v-1)=12000-(240-v-1)

在本实施例中,依次对步骤(1)读取的ds个采集数据进行数据映射:将采集数据对应的三维数据库地址y中的数值读出加1,再写回三维数据库地址y中;

依次对读取的ds即400个采集数据进行数据映射:将采集数据对应的三维数据库地址y中的数值读出加1,再写回三维数据库地址y中。数据映射过程中,每dr即100个采集数据数据映射完后,即一列数据映射完毕,更新标志位x:x=x+1,如果x+1等于rx,则x=0。在本实施例中,数据映射时第1-100个采集数据将映射在对应的地址120000-120239上,100个采集数据映射完之后标志位x加1,即x=501,第101-200个采集数据映射在对应的地址120240-120479上,100个采集数据映射完之后标志位x加1,即x=502,同理当400个采集数据都映射完成后,x=504。三维数据库映射前后的波形数据如图4(a)、(c)所示,其中,黑色方框表示有波形数据,白色方框表示,没有波形数据。

当标志位x=799时,更新标志位事,则x+1=800,即满足x+1等于rx,则x=0。

步骤s3:导入显存

所有ds个采集数据完成数据映射后,将三维数据库的数值从标志位x对应列即起始地址x×ry开始导入显存(简称导数),当到地址rx×ry-1后,紧接着从地址0继续,直到地址x×ry-1结束,以进行波形显示,然后返回到步骤s1.2,进行下一次的三维压缩映射。

在本实施例中,所有ds即400个采集数据三维压缩映射完后,就开始将三维数据库导入显存(简称导数)。导入显存时,如图从4(d)所示,标志位x对应列开始,即导入显存的起始地址为x×ry,在本实施例中,导入显存的起始地址为504×240,而不是地址0,是因为波形显示要有扫描的效果,即波形从屏幕的右侧向屏幕左侧移动,新波形不断更替旧波形,从标志位对应列开始导数可以保证新映射的进来波形显示在数字示波器屏幕的最右侧,最旧的波形在数字示波器屏幕的最左侧,这样一次次的映射和导入循环,使得数字示波器屏幕上表现的就是一种扫描的效果。

在导入显存从标志位x所指向的那一列地址开始即从120960地址开始,到地址191999之后,紧接着从地址0继续,直到地址120959结束。

图5是三维数据库与显存中导入显存时的地址变换以及波形显示示意图。

在本实施例中,第一次屏幕刷新信号到来时,采集到415个采集数据,这些都是未被读取的采集数据,即d′s=415,这样读取的前ds即400个采集数据进行三维压缩映射。标志位x初始值为0,复位三维数据库中0~959的地址,然后每映射100个采集数据,标志位x增加1,故400个采集数据映射完之后标志位x=4,如图5(a)所示。三维压缩映射完成后,开始导入显存,从标志位x对应列,此时标志位x=4,即从第4列开始导入显存,此时先送往显存的是三维数据库中第4列到第799列的数据,然后才是将0-3这四列数据送往显存。由于三维数据库中的4-799列没有数据,0-3列有数据,故导入显存完成后,显存中只有796-799,这样,对应数字示波器屏幕最右侧的4列有波形数据,如图5(d)所示。

第二次屏幕刷新信号到来时,采集到405个采集数据,第一次读取时,剩下15个采样数据,此时,未被读取的采集数据个数d′s为420,根据公式(2),读取的采集数据个数ds仍然为400,从第x列(x=4)开始数值复位和数据映射,每映射100个采集数据,标志位x增加1,故400个采集数据映射完之后x=8,如图5(b)所示。三维压缩映射完成后,开始导入显存,从标志位x对应列,此时标志位x=8,即从第8列开始导入显存。此时先送往显存的是三维数据库中第8列到第799列的数据,然后才是将0-7这四列数据送往显存。由于三维数据库中的8-799列没有数据,0-7列有数据,故导入显存完成后,显存中只有792-799,同时,第一次三维压缩映射的波形数据向左移了4列,第二次三维压缩映射的波形显示在数字示波器屏幕的最右侧4列,如图5(e)所示。同理第三次三维压缩映射与导入显存结束后,第三次三维要是映射的波形显示在数字示波器屏幕的最右侧,之前的波形则对应向左移动对应列数,如图5(c)、5(f)所示。这样实现了扫描模式下三维映射,让数字示波器在慢速时基档也可呈现出荧光显示效果。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1