由uClinux与MC68VZ328构成数字存储示波器

时间:2020-10-06 13:35:44 理工毕业论文 我要投稿

由uClinux与MC68VZ328构成数字存储示波器

摘要:介绍嵌入式μClinux操作系统;在该操作系统上使用Motorola MC68VZ328 CPU、FIFO存储器,设计实现一种数字存储示波器;在软件实现上,利用μUlinux的多任务特性。系统最大采样频率为40MHz,具有LCD显示和触摸屏界面。

数字存储示波器是一种具有数据存储、预触发、波形存储、便于与PC机通信等特点和优点的便携式智能仪器,广泛应用于机械故障检查、野外作业、工业现场等。本文介绍的便携式数字存储示波器构建于嵌入式μClinux操作系统平台之上,采用Motorola公司的龙珠系列MC68VZ328(以下简称VZ328)芯片作为处理器,采样频率与放大幅度可通过触摸屏调节;系统成本低、操作简单,可实现采集、存储和分析功能,具有实际应用前景。

1 嵌入式系统简介

1.1 嵌入式μClinux系统

嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁减,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统。嵌入式Linux(Embedded Linux)是指对Linux经过小型化裁减后,能够固化在容量只有几百K字节存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究是目前操作系统领域的一个热点。

本文介绍的系统采用一种优秀的嵌入式操作系统——μClinux。它主要面对non-MMU的处理器,其主要特征为[1]:

①是一个多任务的嵌入式操作系统;

②内核小,只有512K左右;

③同Linux系统的API保持一致;

④继承了Linux系统成熟的网络协议栈;

⑤支持一些主要的文件系统,如:FAT、EXT2、ROMFS、JFFS。

1.2 处理器简介

图2 FIFO工作时序

VZ328是Motorola公司MC68328 CPU家庭龙珠系列中的第一款。VZ328基于Motorola FLX68K核,内部还集成了控制逻辑和SDRAM、LCD、SPI、UART、定时器/PWM和多达76位的通用I/O(GPIO)。运行在33MHz时,VZ328处理能力为5.4MIPS。该处理器主要针对外部设备较少的手持设备,工作电压为3.3V。

2 系统构成

2.1 系统组成

系统组成框图如图1所示。

图1中,ADC采用的是Philips公司的8位高速并行A/D,最高采样频率为40Msps。采用的是IDT公司1024×9位先进先出FIFO存储器。由于该款FIFO的最高存取速度为35ns,为了保证系统40Msps的采样频率,我们通过使用双FIFO与A/D相连接,A/D输出的数据轮流存入FIFO A和FIFO B中来保证整个系统的性能。采样信号与FIFO存储器读和写的工作时序如图2所示。VZ328与采集卡之间的接口详见2.2节。

2.2 系统接口设计

系统使用了VZ328的I/O端口读取数据并发出控制信号。具体方案如图3所示。

系统利用J口实现数据的输入输出,利用D口和G口来进行控制。J口在输入数据进要求该口的方向寄存器PJDIR置为0,在输出数据时要求PJDIR置为1。采集的`信号经过A/D变换后首先进入FIFO存储器,当从FIFO中每读出一个数据后需要再向其发送一个读数脉冲信号,这样才能保证正确读出下一个单元内存储的数据。该读数脉冲由G口的第四位PG4给出。数据从FIFO存储器中被读出后经过锁存器进入端口J的数据寄存器PJDATA中,锁存信号由D口的第四位PD4给出。当CPU读周期到来时,数据由端口被读入内存。采样频率控制信号由J口的J5、J6、J7三位输出,数据采集复位信号RESET由J口的J0位输出,两者的锁存信号均由D口的PD5给出。类似地,幅值控制信号由J口的J0、J1、J2三位输出,锁存信号由D口的PD7给出。此外,每当数据采满1K时,FIFO存储器会产生一个中断信号INT。该信号由D口的PD6输入。