由uClinux与MC68VZ328构成数字存储示波器
发布时间:2008/5/28 0:00:00 访问次数:537
摘要:介绍嵌入式μclinux操作系统;在该操作系统上使用motorola mc68vz328 cpu、fifo存储器,设计实现一种数字存储示波器;在软件实现上,利用μulinux的多任务特性。系统最大采样频率为40mhz,具有lcd显示和触摸屏界面。
关键词:嵌入式系统 数字存储示波器 fifo 多任务
数字存储示波器是一种具有数据存储、预触发、波形存储、便于与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输入。
2.3 系统软件结构
基于嵌入式linux的数字示波器系统主要分为数据采集和存储模块、波形显示和刷新模块以及触摸屏控制模块三个部分。系统软件由linux下的c
摘要:介绍嵌入式μclinux操作系统;在该操作系统上使用motorola mc68vz328 cpu、fifo存储器,设计实现一种数字存储示波器;在软件实现上,利用μulinux的多任务特性。系统最大采样频率为40mhz,具有lcd显示和触摸屏界面。
关键词:嵌入式系统 数字存储示波器 fifo 多任务
数字存储示波器是一种具有数据存储、预触发、波形存储、便于与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输入。
2.3 系统软件结构
基于嵌入式linux的数字示波器系统主要分为数据采集和存储模块、波形显示和刷新模块以及触摸屏控制模块三个部分。系统软件由linux下的c