新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于NiosⅡ的数字示波器的设计与实现

基于NiosⅡ的数字示波器的设计与实现

作者:时间:2015-01-16来源:网络收藏

  0 引言

本文引用地址:http://www.eepw.com.cn/article/268252.htm

  在电子技术领域中,示波器的应用非常广泛,使用它可以方便直观地观察到信号的全貌,并测量信号的幅度、频率、周期等基本参数。传统的模拟示波器显示时采用荧光物质的余辉时间都是一定的,导致其难以观测到周期较长的信号。另外,模拟示波器还无法对信号进行一些特殊的数学处理(如FFT)。而正好可以克服模拟示波器的不足,它采用各种先进的测量技术来满足各种应用。如基于采样原理,采用高速A/D转换器实现高速数据采集,将模拟信号数字化,然后借助处理器强大的数据处理能力实现各种数字信号处理算法,将波形以图形的方式直观地显示出来,并能够得到被测信号各种丰富的参数。

  1 系统总体方案

  本设计的系统框图如图1所示,得益于FPGA的灵活性,系统的大部分功能都在FPGA内部完成,使得整体结构非常简洁。外围电路主要包括A/D转换模块、LCD显示器、SD卡、FLASH和按键。

  

 

  A/D转换模块的功能是实现模拟信号到数字信号的转换;FLASH模块的功能是存储(System-on-a-Programmable-Chip)片上系统的固件程序;SD卡模块的功能是实现测量信息的长期、大量存储,提供与PC机的接口,便于后期在计算机上进行分析;LCD模块的功能是对测量信号波形和相关参数的实时显示;按键模块的功能是提供整机的调节和控制接口。

  2 FPGA逻辑功能模块设计

  FPGA内部系统框图如图2所示。它主要由采样率控制器、触发控制单元、FIFO控制器、频率测量单元、按键控制单元和LCD驱动器构成。

  

 

  3 设计

  本设计中使用的是/f处理器,使用硬件乘除法器,工作于50 MHz。使用FPGA内嵌的RAM块作为系统的运行内存。采用FLASH作为片外存储器,保存用户程序,其通过Avalon总线三态桥与处理器相连。

  3.1 软件设计

  系统开机调用相关函数初始化LCD,SD卡和FAT文件系统之后,首先绘制图形界面,输出固定信息,接着读取波形参数,将其显示在LCD上,然后等待FIFO写满。若FIFO写满则将FIFO数据读入缓冲区中,同时在屏幕上绘制波形,获得波形的最大和最小值。最后如果有用户按键输入则处理按键事件,否则检测波形参数是否变化,若有变化则更新显示,否则等待FIFO写满,进行下一次显示。流程如图3所示。

  

 

  3.1.1 SoPC底层软件设计

  底层软件为各设备的驱动程序,主要有:

  (1)LCD驱动。根据显示内容的需求,LCD驱动程序设计了以下函数:

  ①发送数据/命令:将数据/命令通过驱动器发送到LCD;

  ②LCD初始化:完成LCD的上电复位和初始化;

  ③LCD清屏:清空显示;

  ④输出一个像素:在指定位置输出一个指定颜色的像素点;

  ⑤画直线:画从(x0,y0)到(x1,y1)的指定颜色的直线;

  ⑥画矩形:画从(x0,y0)到(x1,y1)的指定颜色的矩形,可选择是否填充;

  ⑦输出一个字符:在指定位置输出一个指定颜色的字符;

  ⑧输出一个字符串:在指定位置输出一个指定颜色的字符串。

  (2)SD卡驱动。SD卡通信采用SPI模式,SD卡驱动的函数及功能为:

  ①发送数据/命令:将数据/命令发送到SD卡;

  ②读取数据:从SD卡读取一个字节;

  ③SD卡复位:SD卡上电后复位并使其进入SPI模式;

  ④SD卡初始化:初始化SD卡使其作好数据读写准备;

  ⑤读一个扇区:从指定的扇区地址读取一个扇区的数据到缓冲区;

  ⑥写一个扇区:将缓冲区数据写入指定的扇区地址处。

  (3)FAT16文件系统。FAT16文件系统的主要函数及功能为:

  ①FAT初始化:获取每簇的扇区数、FAT表地址、根目录地址和FAT表占用的扇区数等FAT信息;

  ②确定文件名称:查找已存在的波形文件以确定要保存的文件的名称;

  ③添加根目录项:将保存的文件的名称、大小、位置等添加到根目录;

  ④添加FAT表项:查找FAT表的空簇,将新文件的簇号写入FAT表。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭