基于ARM9和uC/OS-Ⅱ的嵌入式数字示波器

发布者:devilcore最新更新时间:2015-03-23 来源: eechina关键字:ARM9  uCOS-Ⅱ  数字示波器 手机看文章 扫描二维码
随时随地手机看文章
1 引言

嵌入式数字示波器是近年发展起来的一种实现数据及波形实时显示的智能终端设备。目前通用的数字示波器多采用DSP、内嵌微处理器型FPGA或DSP+FPGA结构。嵌入式数字示波器可看成是一种低成本、功能相对较少、可作为一个模块使用的嵌入式智能终端。虽然DSP数据处理能力强大,运行速度较高,FPGA灵活性强,可以充分地进行设计开发和验证,便于系统升级。但是,DSP和内嵌微处理器型FPGA一般价格较高。不适合在低成本的嵌入式数字示波器开发中使用。

ARM是面向低价位市场设计的一种RISC微处理器,其优势是性价比高,适合嵌入式数字示波器的需求。当前采用ARM芯片设计的嵌入式数字示波器主要基于ARM7内核的微控制器S3C44BOX。采用这种结构设计的嵌入式数字示波器,由于时钟频率和并行处理能力较低.因此通常用于通道数较少的设计中,无法满足对系统实时性要求较高的多通道嵌人式数字示波器的设计。本文提出了一种基于S3C2410A微控制器(ARM920T内核)和uC/OS-Ⅱ实时操作系统的设计方法,并在此基础上开发出一款低成本且具有中文菜单人机交互界面的4通道嵌入式数字示波器产品。

2 嵌入式数字示波器原理

系统的总体设计框图如图1所示。

根据项目需求,本项研究的主要性能指标:4通道输入,采样频率范围为2KHz~20 MHz,输入电压范围为0~±4V,频率、脉宽和幅值(满量程)精度:±0.5%,良好的人机交互界面。

采用S3C2410A和uC/OS..-Ⅱ相结合的设计方法。输入前端采用模数(A/D)转换和FIFO缓冲存储的结构.利用FIFO在读写控制逻辑、高速数据交换方面的优势,使多路数据采集和存储同步的同时,还可改变采样频率切换量程。多路数据传输利用DMA传输方式,提高系统运行效率。输出显示端利用S3C2410A的液晶屏控制器将数字量转换成液晶屏上的点坐标来显示4通道的波形以及相关数据。采用鼠标对人机交互界面进行操作,减小了系统的体积,提高了系统的可操作性。

1.gif 
图1嵌入式数字示波器原理框图

3 硬件设计

根据系统的总体功能划分,可将硬件设计分为数据采集模块和显示模块2大部分。

3.1数据采集模块

数据采集模块主要由MD转换和FIFO缓冲存储组成,系统接口如图2所示。

2.gif 
图2数据采集系统接口图

单路数据采集由1片运放(AD9631)、1片12位ADC (AD9224)、2片FIFO(IDT7204)组成。

AD963l是一种低畸变、低噪声、高速运放。主要提高输入阻抗,减小外接阻抗变化的影响。模拟输入经AD9631处理后至AD9224,在S3C2A10A的控制下,系统产生可调频率方波接为AD9224和IDT7204的工作信号。AD9224开始对输入信号进行模数转换.同时转换输出的数字信号保存到相应的FIFO中。FIFO存满时,S3C2410A通过DMA通道将多路FIFO中的数据依次存放到SRAM中的固定地址区域。

S3C2410A内ADC最高工终频率廷有2.5MHz。因此需外接高性能ADC(AD9224)。AD9224为单通道、12位.40MHz的ADC。A/D转换将数字信号发送到FIFO。

FIFO是一种先进先出结构,没有地址线,布线简单,因此仅用少量的系统资源就能实现数据的快速交换。两且控制简单,不会产生地址冲突。FIFO采用的是4K x 9bit的CMOS双端口存储缓冲芯片IDT7204。AD9224输出12位,而IDT7204输入9位,因此在ADC数据输出和FIFO存储接口设计上采用2片IDT7204进行字长扩展。FIFO缓冲存储实现的功能:接受写信号,存放经过转换的数字信号并依次增加地址,当FIFO存储满时,给出满信号;接受读信号,将FIFO存储的数据读出并存到SRAM中的同定地址处。

3.2显示模块

S3C2410A内置液晶屏控制器,可以支持水平/垂直像素、数据位宽、数据传输时间和刷新频率不同的多种液晶显示屏,最大可以支持256K色TFT、4K色STN彩色液晶屏。

液晶屏控制器主要用来传输显示信息和必要的控制信号.如VFRAME、VLINE、VCLK和VM等。除了控制信号外,还包括传输显示信息的数据接口:VD[23:0]。通过LCDCDMA来传输显示信息,LCDCDMA是一种复杂的DMA传输方式,通过使用这种特殊的DMA传输方式,可以将疑示信息从帧内存中自动传输到液晶屏驱动器,并且不通过CPU干预直接在显示屏上显示信息。

4 软件设计

根据系统的总体功能,可将嵌入式数字示波器的软件设计分为3个模块:uC/OS-Ⅱ的移植、数据采集和图彤形显示。

4.1 uC/OS-Ⅱ的移植

uC/OS-Ⅱ的移植是应用程序设计的基础。通过uC/OS-Ⅱ内核的任务调度,可解决传统嵌入式软件设计中出现的编程复杂、可维护性差和系统的实时性得不到保证等问题。

uC/OS-Ⅱ在S3C2410A上的移植,重点是uC/OS-Ⅱ的任务切换机制。任务切换通过软中断来实现,主要包含OS_TASK_SW与_OSStartHighRdy 2个函数。OS_TASK_SW总是在任务级代码中被调用。当操作系统作任务切换时,调用任务切换函数OS_TASK_SW,获取中断向量号并跳转到相应的服务程序OSIntCtxSw。该函数前半部分是切换前任务的参数压栈,后部分是即将运行的任务恢复.表现为参数出栈。后半部分有一个单独的标号OSIntCtxSw_1,在汇编下霹构成了2个嵌套函数OSIntCtxSw和OSIntCtxSw_1。其中OSIntCtxSw包含了OSIntCtxSw_1,OSIntCtxSw_1的主要功能是任务的恢复运行。[page]

_OSStartHighRdy是启动运行时调用的,具体的路径是主程序main.C里调用操作系统启动函数OSStart,然后调用OSStartHighRdy和_OSStartHighRdy。_OSStartHighRdy通过调用OSIntCtxSw_1米设置操作系统启动并加裁优先级最高的任务。

4.2 数据采集

数据采集模块是嵌入式数字示波嚣的重要组成部分,模块功能的具体实现主要依靠采样和数据传输任务。

数据采集模块的程序流程图如图3所示。

3.gif 
图3数据采集模块流程图

系统工作过程中.由于输入信号的频率不固定.要求随时可以通过人机交互界面来调节系统显示参数。显示合适的周期数以便对波形避行观察分析。采样任务的主要功能就是显示参数的变化来调节ADC的采样频率和FIFO的数据存储频率,并控制ADC工作/停止状态和FIFO存储芯片的写状态,使ADC和FIFO的工作时序相协调。

在S3C2410A的控制下4路ADC同时开始工作,当4组FIFO全满时,可产生一个存储全满信号量。数据传输任务的主要功能就是在接收到存储全满信号量后,通过DMA通道依次将4组FIFO中的数据转存到SRAM中。S3C2410A提供了2种DMA数据传输方式:单数据传输和4数据长的突发传输。根据系统的硬件电路设计我们选择单数据传输方式。利用DMA传输方式可以不通过CPU中断来实现数据的传输,在数据传输过程中解放了CPU,使CPU 可以工作在多任务环境下,从而提高整个系统的性能。

4.3图形显示

图形显示分为2个工作页面,分别由2个任务来控制:波形照示和输入输出显示任务。

页面1为波形显示页面,主要用于显示4通道输入波形和相关信息,如:周期、脉宽、最大幅值等。通过鼠标对系统静显示参数进行修改,如:水平时间分辨率和垂直电压分辨率等,可方便地对波形进行放大/缩小,左右移动,上下移动,便于对波形观察、对比和分析。

页面2为输入输出显示页面。当切换到输入输出显示页面时,输入输出显示任务开始对16路输入口进行高低电平的检测,该任务通常处于挂起状态,切换到输入输出显示页面时才开始运行,切换到波形显示页面时立即挂起。

每个页面为一个窗体,窗体又分为2个部分:静态和动态。静态部分是固定的,在显示波形的时候,该部分没有变化,也不受其它影响;动态部分是图形按钮以及那些随着按钮变化的部分。将窗体分为2个部分可以减少显示代码的重复读入,提高显示效率。

5 测试与结论

测试部分包括波形和功能测试。部分实测数据如表1(幅值误差为满量程误差)所示。

表1 部分实测数据
b.gif 

波形测试是在50Hz~100KHz的频率范围内先选取固定的频率点,利用信号发生器产生输入信号,在显示屏上观察波形并记录相关数据。

功能测试是对各种图形按钮:动/静态、通道选择、显示/隐藏、放大/缩小,、左/右移动、上/下移动、左/右移动步进距离进行单操作和多种复合操作,观察功能是否能实现。

通过测试得出如下结论:该嵌入式数字示波器支持4通道输入,采样频率范围:2KHz~20 MHz,输入电压范嗣:0~+4V.测量显示的信号频率、脉宽和幅值精度:±0.5%。整机具有良好的人机交互界面,操作方便、功能比较丰富。既可对单通道的波形进行观察分析,也可对4通道的波形进行对比分析。

本文作者创新点:采用ARM920T核微控制器S3C2410A作为嵌入式数字示波器的主控芯片,并利用FIFO作为缓冲存储器可支持多通道的波形显示;采用鼠标操作界面代替传统操
作面板;增加了输入输出口控制功能。
关键字:ARM9  uCOS-Ⅱ  数字示波器 引用地址:基于ARM9和uC/OS-Ⅱ的嵌入式数字示波器

上一篇:全面进驻智能手机,64位处理器渗透率飙过半
下一篇:stm32看门狗和窗口看门狗的区别

推荐阅读最新更新时间:2024-03-16 13:55

基于ARM9的Web服务器Boa的软/硬件设计
1.ARM简介 广义地讲,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。它是嵌入到对象体系中的专用计算机系统,以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。目前非常流行的ARM内核有ARM7TDM1、S t r o n g A R M 、A R M 7 2 0 T 、A R M 9 T D M 1 、ARM920T、ARM940T、ARM946T、ARM966T、ARM10TDM1等。本文所讨论的目标板的CPU为ARM920T内核的三星S3C2410芯片。 ARM9系列微处理器主要应用于无线设备、仪器仪表、安全系统、机顶盒、高端打印机、数字照相机和数
[电源管理]
基于<font color='red'>ARM9</font>的Web服务器Boa的软/硬件设计
你用过数字示波器中的通过/失败测试(pass/fail testing)功能吗?
你用过数字中的通过/失败测试(pass/fail testing)功能吗?如果你需要对小批量设备开展重复性测试,这是一个很好的工具。你也可以在自动测试环境中使用pass/fail测试。用示波器做这种测试通常都要比将整个波形传送给计算机然后离线处理快得多。 许多今天的台式示波器都可提供多个级别的测试标准。这些测试标准被分成两大类:模板或样板测试和参数极限测试。模板测试是将捕获到的波形与用户定义的模板进行比较。参数极限测试基于的是波形测量的值,比如幅度或频率。在每个类别中,你都可以选择合适的逻辑操作来定义波形是否通过。对一个实际波形进行pass/fail测试是最好的解释途径。 本例将使用超声波作为待测设备。该设备会产生一个时长
[测试测量]
你用过<font color='red'>数字示波器</font>中的通过/失败测试(pass/fail testing)功能吗?
具有硬件矢量浮点运算单元的微控制器在医疗电子中的应用
  微控制器是将微型计算机的主要部分集成在一个芯片上的单芯片微型计算机。微控制器诞生于20世纪70年代中期,经过20多年的发展,其成本越来越低,而性能越来越强大,这使其应用已经无处不在,遍及各个领域。例如电机控制、条码阅读器/扫描器、消费类电子、游戏设备、电话、HVAC、楼宇安全与门禁控制、工业控制与自动化和白色家电(洗衣机、微波炉)等。   现今的嵌入式工业及汽车系统中,有许多是基于8位或16位微控制器架构来设计的。随着新的低功耗32位架构的面市,这些应用有可能获得更高的性能、准确度和功效。此外,处理能力的提高也有助于实现新产品的差异性功能,包括先进的控制算法,GUI显示器、语音控制,以及电容式触摸感测等下一代接口。8 bit/1
[医疗电子]
具有硬件矢量浮点运算单元的微控制器在医疗电子中的应用
基于ARM9的视频监控终端的设计与实现
  视频监控系统是安全防范系统的重要组成部分, 它具有直观, 方便, 信息内容丰富而被广泛应用于许多场合。 传统的数字视频监控一般采用基于PC机平台+ 视频采集卡的形式, 该方案有系统体积大、成本高、稳定性不够好等缺点。 随着嵌入式系统监控和视频压缩技术的日渐成熟, 以及高网络带宽的普及, 通过嵌入式平台, 实现视频信号采集、压缩, 通过网络传输, 进行视频监控已成为可能。 该设计采用的是韩国三星公司的一款基于ARM920T 内核的嵌入式处理器, 并将国际上流行的MPEG4 压缩编码技术和流媒体传输技术相结合, 开发出可靠性高、成本低、体积小、功耗低的远程视频监控系统终端。   1 系统开发硬件平台   系统硬件平台如图1 所
[单片机]
基于<font color='red'>ARM9</font>的视频监控终端的设计与实现
基于ARM9的指纹识别门禁系统
  指纹门禁系统是基于生物特征识别技术的一项高科技安全设施,近年来在国内外得到了广泛的应用,并已成为现代化建筑智能化的标志之一。对于一些核心机密部门,如重要机关、科研实验室、档案馆、民航机场等场所,指纹门禁系统可以提供高效、智能、便捷的授权控制。由于指纹具有携带方便、人人各异、终生不变的特点,因此利用指纹识别作为身份认证的手段,与传统的钥匙、密码相比,大大提高了安全性与可信性。   该系统基于ARM9芯片Samsung S3C2440AL,以Veridicom公司指纹采集芯片FPS200作为硬件平台,以嵌入式Linux为软件平台。在该研究领域中,基于PC平台的识别系统一直是研究的重点,本文实现的基于ARM平台的系统具有轻便,易安
[单片机]
ARM9协处理器CP15、MCR/MRC指令
在基于ARM的嵌入式应用系统中,存储系统通常是通过系统控制协处理器CP15完成的。CP15包含16个32位的寄存器,其编号为0~15。 访问CP15寄存器的指令 MCR ARM寄存器到协处理器寄存器的数据传送 MRC 协处理器寄存器到ARM寄存器的数据传送 MCR指令和MRC指令只能在处理器模式为系统模式时执行,在用户模式下执行MCR指令和MRC指令将会触发未定义指令的异常中断。 MCR指令 MCR指令将ARM处理器的寄存器中的数据传送到协处理器寄存器中。如果协处理器不能成功地执行该操作,将产生未定义的指令异常中断。 指令语法格式 MCR{ cond } p , opcode_1 , Rd , CRn , CRm
[单片机]
<font color='red'>ARM9</font>协处理器CP15、MCR/MRC指令
RIGOL粉丝节买示波器送大礼
为回馈广大用户的长期支持,北京普源精电科技有限公司(RIGOL)特别推出为期一个月的粉丝节活动。从5月1日--30日期间,凡在RIGOL授权网店购买DS1054Z数字示波器,即可获赠200元京东电子礼品卡1张;购买DS1102U数字示波器,即可获得100元京东电子礼品卡1张!这次活动促销的两款产品皆为电商专卖产品,仅在网店销售。 RIGOL的两款电商专卖产品DS1054Z、DS1102U数字示波器,自去年推出以来,以其实用的功能,出色的性能,友好的界面,细致的做工,实惠的价格,受到了广大电子爱好者的追捧,好评如潮。   图1:RIGOL DS1054Z数字示波器   RIGOL DS1054Z是四通道数字示波器,
[测试测量]
基于ARM9的视频监控终端的设计与实现
摘要:设计了一种基于S3C2410 硬件平台和嵌入式操作系统的远程视频监控系统终端, 介绍了该嵌入式系统的软硬件设计思想和体系架构,对系统视频采集, MPEG4 压缩, 网络传输进行了详细分析。 与传统的视频监控系统比较, 该方案具有体积小, 成本低, 稳定性好等优点。   视频监控系统是安全防范系统的重要组成部分, 它具有直观, 方便, 信息内容丰富而被广泛应用于许多场合。 传统的数字视频监控一般采用基于PC机平台+ 视频采集卡的形式, 该方案有系统体积大、成本高、稳定性不够好等缺点。 随着嵌入式系统监控和视频压缩技术的日渐成熟, 以及高网络带宽的普及, 通过嵌入式平台, 实现视频信号采集、压缩, 通过网络传输, 进行视频监
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved