基于嵌入式微处理器EP9315的二次开发技术

发布者:郑哥最新更新时间:2007-05-25 来源: 电子技术应用关键字:存储  整数  信号  接口 手机看文章 扫描二维码
随时随地手机看文章
嵌入式系统已成为IT行业研发热点,但基于嵌入式系统的二次开发应用却存在很多难点,难以真正地将嵌入式系统投入到实际应用中。武汉中科院岩土力学所智能仪器室对基于ARM9的嵌入式系统进行二次开发,采用ARM9微处理器取代原有的51单片机实现对SY5声波检测仪的控制。其中高速微处理器与现有低速设备接口及在配套的操作系统中就SY5声波检测仪原有功能设计相应驱动是本文研究的重点。同时提出了可行的硬件调试方法,为今后基于ARM9微处理器的硬件开发提供了思路。

1 系统构成

1.1 高性能的ARM9嵌入式微处理器

本设计选择Cirrus Logle公司2004年7月推出的EP93XX系列中的高端产品EP9315。该微处理器是高度集成的片上系统处理器,拥有先进的200MHz ARM92OT处理器并支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。它具有ARM920T内核所有的优异性能。与其他ARM9微处理器相比,EP9315具有以下特性:MaverickCrunchTM数学运算引擎,支持浮点、整数和信号处理指令;丰富的集成外设接口,包括PCMCIA、接口图形加速器、可接两组设备的EIDE、1/10/100Mbps以太网MAC、3个2.O全速HOST USB、专用SDRAM通道的LCD接口、触摸屏接口、SPI串行外设接口、AC97接口、6通道TS接口、8×8键盘扫描接口;支持4组32位SDRAM的无缝连接等。

配合Windows CE.net嵌入式操作系统,系统开发效率高、运行稳定,为工业控制提供了可靠的系统平台。基于定制的WinCE操作系统实现工业控制中应用模块的专用驱动,提高了嵌入式系统的通用性。

1.2 系统主体结构

EP9315嵌入式系统总体结构如图l所示。整个系统分为嵌入式系统、应用模块(声波检测仪)和转换模块三部分。Cirrus Logic公司为用户提供了基于该处理器的全功能开发板。该开发板扩展了EP9315的所有功能,并可根据实际需求将全功能开发板的硬件进行裁减,从而降低成本。该开发板预留了标准PC104接口,可方便用户开发应用。应用模块也预留标准PC104接口,其中的I/O控制信号、数据线、地址线与EP9315嵌入式系统的PCl04接口一一对应。而系统中的转换模块可保证嵌入式系统和应用模块连接的稳定性。

EP935嵌入式系统主要由电源、32MB/64MB内存、LCD接口、警示LED、主USB、面板按键、CF卡接口、以太网接口和标准PCI04接口组成。其中电源提供5V、3.3V、1.8V三种电压输出,分别给应用模块、外设、CPU内核供电。内存为操作系统提供运行空间。其中嵌入式系统与应用模块的I/O控制信号、数据线和地址线都引到标准PC104插座上,经转换模块处理后相接。采用PC104总线标准实现了嵌入式系统的各种应用目标。液晶显示屏用于人机交互,警示LED直观地显示电源状况。主USB支持U盘和USB鼠标键盘,CF卡作为大容量存储器存放应用模块的数据,用户通过面板按键实现对整个系统的控制。

1.3 嵌入式系统板与应用模块的连接方案

系统外接的应用模块(SY5声波检测仪)采用5l系列单片机控制数字模拟电路实现特殊功能。整个数字电路部分均为5V供电,模拟部分由5V及正负12V供电,采样数据通过RS232串口传给上位机进行数据处理。而EP9315、I/O口及外围电路均为3.3V供电,管脚承受的最大电压不超过3.6V。

考虑到每个管脚的驱动能力有限,用电平转换驱动芯片74INXC4245实现电平转换。其作用如下:

(1)改善信号的质量。某些对时延比较敏感、且在系统内又相距较远或者较分散的信号,信号线的寄生电容会损害信号的特性。采用74LVXC4245驱动芯片进行隔离,会改善系统的性能。
(2)抗干扰。增加74VXC4245这样的有源缓冲器可以有效地减少干扰。
(3)电平转换。3.3V到5V和5V到3.3V双向电平转换。

74LVXC4245是8通道电压转换器,最大可提供200mA的驱动电流。与专用模块接口时,主要实现数据线、地址线、I/O信号、中断信号等的单/双向电平转换。

地址线的电平转换方向设置为3.3V到5V。I/O、中断信号的电平转换方向可设置为单向转换,3.3V到5V或5V到3.3V片选可接地。

数据线是双向信号,电平转换时要特别注意其方向信号和片选信号的设计。设计不合理会造成总线冲突,系统无法启动。数据线电平转换电路如图2所示。

由图2可见,方向信号使用读信号的反向信号#RD,保证读操作时数据线由5V到3.3V,写操作时数据线由3.3V到5V,防止了总线冲突。使能信号OE可接地或接片选信号。

EP9315在WinCE操作系统下主频达到200MHz,总线频率为1OOMHz,外设时钟为50MHz,硬件调试环境必须与操作系统完全吻合。而应用模块多采用74系列芯片,工作频率一般为几兆赫兹。频率不匹配造成了EP9315发出的读写及使能信号脉宽不足50ns,对由74系列芯片组成的专用模块不能实现正确的读写操作。因此,系统的存储空间采用了如图3所示的分配,应用模块地址空间为CS7:0X7000_0000_OX7FFF_FFEF。

为给低速设备提供足够脉宽的总线信号,设置应用模块地址空间存储空间读写特性寄存器SMCBCR7中等待时间位WST1和WST2:
总线读取等待时间=(WST+1)×总线时钟
连续读取等待时问=(WST+1)×总线时钟
调试代码如下:
 
这种设置使得SDRAM等高速外设和低速外设拥有不同的总线频率,具有很大的灵活性。

2 系统软件

2.1 嵌入式操作系统下的驱动程序类型

由于Windows CE.net开发工具好学易用,没有目标设备时可以在PC上仿真测试,因此基于Windows CE.net的嵌入式开发日益普及。但要在操作系统下控制应用模块就要为应用模块编写驱动。本质上,Windows CE的设备驱动程序都是一些动态链接库(.dll文件),这些dll向内核提供了入口函数,使设备管理模块可以通过这些函数与具体的硬件设备进行通信。由于应用模块功能的不同,微软没有提供相应的驱动,所以只能自行开发测试。开发过程中采用单层驱动结构。

2.2 驱动程序开发

2.2.1 应用模块初始化


应用模块的初始化在标准流接口函数DEV_Init()中完成,在内核加载驱动时调用该函数,其中DEV为设备文件名的前缀,Windows CE使用其识别与特殊流接口驱动程序相对应的特殊设备。初始化的基本步骤为:
??

2.2.2 应用模块数据接收与发送

应用模块数据的传递在流接口函数Dev_Write( )和Dev_Read()由完成。

DEV_Wnte(<由应用程序传入的设备句柄>,<写入?数据指针>,<写入数据位数>)
{//每写l字节调用一次WRITE_PORT_UCHAR();}
DEV_Read(<由应用程序传入的设备句柄>,<存放数据指针>,<读入数据位数>)
{//每读1字节调用一次READ_PORT_UCHAR();}
其中:WRITE_PORT_UCHAR()和READ_PORT_UCH-AR()中传递的地址为经过MmMapIoSpace()映射过的虚拟地址。

2.2.3 建立应用程序和设备驱动的联系
操作系统中的应用程序与驱动中的流接口函数一一对应。其关系如图4。

当应用程序准备对某个设备进行读写时,系统必须先执行CreateFile()函数打开这个设备,得到的设备句柄即为底层设备驱动中Dev_Open()的返回值。应用程序通过CloseHandle()调用设备驱动中的Dev_Close( )。执行完该函数后驱动程序引用的设备将不再有效。当一个流接口驱动程序被打开后,应用程序使用ReadFile()对这个设备进行读操作,驱动程序中Dev_Read()响应该操作;同样应用程序使用WriteFile()对该设备进行写操作,驱动程序中Dev_Write()响应此操作。另外,应用程序还可以使用DeviceIOControl()通知操作系统调用流接口驱动中的DEV_IOControl()去通知驱动程序要执行的操作。这些操作用户可用Windows CE提供的API函数CTL_CODE自定义。

笔者在Windows CE.net操作系统下,已实现了基于EP9315嵌入式系统对武汉中科院岩土力学所设计的SY5声波仪的控制,设备运行稳定。与原来由51单片机搭建的SY5声波仪相比,该系统功耗降低、体积变小、稳定性增强、成本降低,更适合工业控制中的运用。

关键字:存储  整数  信号  接口 引用地址:基于嵌入式微处理器EP9315的二次开发技术

上一篇:采用PCI9052设计PCI总线运动控制卡
下一篇:基于MC56F8323的两相步进电机高速细分驱动模块

推荐阅读最新更新时间:2024-03-30 21:23

亚声频单音信号发生器电路
亚声频单音信号发生器电路
[模拟电子]
亚声频单音<font color='red'>信号</font>发生器电路
一种高性能指纹锁硬件平台的设计
  随着生物特征识别技术的快速发展,指纹识别技术广泛进入人们的生活领域。基于PC机端的指纹算法应用已经相当成熟,而便携、轻巧的嵌入式产品相对缺乏。国内很多知名企业已经研发并生产了脱机模式的指纹识别平台,这类产品价格高昂且多数为商业用途。随着家庭数字化的需求和消费类电子的普及,越来越多的民用领域需要指纹门禁系统。因此,开发一种高性能、低成本、安全可靠的民用指纹锁硬件平台具有很强的现实意义和广阔的市场空间。   研究嵌入式平台的指纹识别系统的设计:明确项目的整体需求,针对具体需要的部分功能作详细的需求分析;设计时,在器件运用上作最优的选择,同时兼顾性能和价格等因素;布局上,考虑相应系统的体积、容量和位置等因素,实现一个比较全面合理
[嵌入式]
智能液晶触摸显示终端与单片机接口的设计
  作为一种常见的显示设备,LCD具有功耗低,体积小,重量轻,显示信息量大等特点,尤其是在便携设备中,更占据着绝对主流的地位。对于字符或数字的简单信息显示,通常可用段码式LCD驱动器。对于复杂的信息显示,则必须由点阵式LCD驱动器来显示。最常见的点阵式LCD控制/驱动器中,有不带中文字库的 LCD驱动器,也有带中文字库的LCD驱动器。随着嵌入式系统的广泛应用,出现了大量的16位和32位的嵌入式处理器。然而传统的8位单片机长期用于生产实践中,制造工艺成熟,性能更加可靠,因此仍然占有相当大的市场,特别是在汽车电子等对可靠性要求极高的领域。液晶显示器具有显示信息量丰富,功耗低,体积小,质量轻,无辐射等优点。触摸屏作为一种特殊的计算机外设
[单片机]
存储走向何处?听听希捷怎么说
根据希捷和IDC发布的《数据时代2025》的数据发展趋势报告显示,2016年全球共产生了16ZB的数据,到2025年这一数值将达到163ZB。用电子科技大学大数据研究中心主任周涛的话说,未来是以数据为原材料、以机器学习为引擎的时代。 毋庸置疑,十倍的增长,对数据采集、存储和分析行业来说都是机遇。 以存储为例,在日前举办的希捷数据+峰会上,希捷全球销售和销售运营高级副总裁郑万成告诉雷锋网:市面上最大存量的硬盘是12TB,要实现163ZB,就需要160亿块12TB的硬盘,但是现在全球硬盘只有4亿的出货量。即便是163ZB的数据只存储15%,最终硬盘市场空间也有10倍的增长。 存储走向何处?听听希捷怎么说       希捷全球销售
[网络通信]
基于CH371的USB接口虚拟示波器设计
    一、引言     对于学校教学实验以及某些特定需求来说,目前市场上的模拟及数字示波器也许并不适用,价格高昂、体积较大且很多专业功能并不实用。而现在电脑的普及程度也达到了相当的规模,利用电脑以及附加的数采模块实现一个灵活便捷的虚拟示波器能够满足大多数的工作、学习和开发需要,并且可以通过较低代价的硬件和软件升级实现相当复杂的信号处理功能,能够以较低的成本、较小的体积实现配置灵活的智能仪器组合;完全可以与便携电脑结合,构成便携式检测维修工作站。目前已经有计算机并口通信的数据采集器,但是USB的应用日趋广泛和深入,如果将USB功能融合在里面则可以实现更高的数据传输率、更方便的使用方式,更为优越的体现出虚拟仪器的性能。     二
[嵌入式]
多 USB 接口的局域网接入技术的实现
摘要:提出了一种全新的计算机接入局域网的方案,使多台计算机可以方便地使用各自的USB接口接入局域网,并提供了该方案的实现方法。 关键词:通用串行总线(USB) 局域网 目前,在局域网内部,计算机接入局域网的传统方法是通过在计算机主板上安装以太网卡来实现网络的互联。这种接入方式需要计算机主板上有闲置的ISA或者PCI插槽,还需要上级网络设备有足够的接口支持。当上级网络设备的下行接口数量不够时,必须在这个网络设备下面添加集线器(HUB)或者交换机(Switcher)。 针对这种情况,本文提出了一种多通用串行总线(USB)接口的局域网接入适配器。它将传统意义上的多块以太网卡和集线器的功能集于一身,使多台计算机可以用各自的USB接口
[应用]
51单片机dds 低频函数信号发生器Proteus仿真程序
单片机源程序如下: #include reg52.h #include lcd1602.h #include delay.h #include pltable.h #include key.h #include adc0832.h void timer0() interrupt 1 { TH0=THtemp; TL0=TLtemp; if(waveform==0) sine_out(); else if(waveform==1) triangle_out(); else if(waveform==2) square_out(); }
[单片机]
51单片机dds 低频函数<font color='red'>信号</font>发生器Proteus仿真程序
DS1318并行接口历时计数器(ETC)
DS1318并行接口历时 计数器 (ETC)是一款44位计数器,可记录器件在主电源和/或备用电源供电时的工作时间,或是一个外部事件的持续时间。计数器时钟的内部频率为4.096kHz,可提供244µs分辨率,最长计时可达136年。内置电源检测电路可以检测到电源失效状态,自动切换到备用电源并控制定时器。如果需要外部事件定时器,控制输入EXT可以控制计数器工作。漏极开路输出可提供一个中断信号,方波输出提供可编程信号。DS1318通过一个单字节宽的并行接口访问,工作在工业级温度范围。   关键特性   单字节宽度并行接口   44位二进制计数器提供244µs分辨率的定时器   自动电源失效检测,切换电路可自动在主电源和电池之间进
[模拟电子]
DS1318并行<font color='red'>接口</font>历时计数器(ETC)
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved