[dsp设计] 基于dsp的pci总线can适配器设计

[dsp设计] 基于dsp的pci总线can适配器设计

ID:6684845

大小:108.00 KB

页数:5页

时间:2018-01-22

[dsp设计] 基于dsp的pci总线can适配器设计_第1页
[dsp设计] 基于dsp的pci总线can适配器设计_第2页
[dsp设计] 基于dsp的pci总线can适配器设计_第3页
[dsp设计] 基于dsp的pci总线can适配器设计_第4页
[dsp设计] 基于dsp的pci总线can适配器设计_第5页
资源描述:

《[dsp设计] 基于dsp的pci总线can适配器设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于DSP的PCI总线CAN适配器设计1引言  CAN总线是一种开放式、数字化、多点通信的串行总线,是一种具有较高性价比、能满足分布式控制要求的现场总线,在控制领域得到广泛采用。CAN的速率可达到1Mb/s/40M,最大传输距离可达10km/5kb/s。为了扩展CAN总线的监控、管理功能,需要一种实时、可靠的CAN总线PC适配器,实现对CAN总线****、控制和操作。本文利用TMS320LF2407芯片自带CAN模块,设计成CAN的一个特殊节点。使其即能通过PCI接口同PC机进行数据交换,又能独立与PC机自主运行。2适配器的硬件设计2.1CAN接口实现  以往CAN总线适配器多数采用I

2、ntel82527、Philips公司的SJA100等芯片来完成CAN通信控制。本文利用TMS320LF2407内嵌的CAN模块作为CAN通讯控制器,该模块是一个16位的外设模块。他完全支持CAN2.0B协议,可工作在标准模式和扩展模式,支持数据帧和远程帧,数据收发采用邮箱方式;有可编程位定时器,可对中断配置编程,可编程实现总线唤醒功能;能自动回复远程请求,有完备的错误诊断功能;可进行自测试,有自动收发功能。PCA82C250是驱动CAN控制器和物理总线间的接口芯片,与DSP2407的CAN模块相连,完成DSP对CAN总线的差动发送和接收功能。2.2PCI接口实现  采用H.X公司的P

3、CI9052实现PCI总线接口功能,PCI9052可与多种局部总线相连接,并且可支持相对慢的局部总线,在PCI总线上达到突发传输速率132m/s。PCI9052拥有读写FIFO,32位的字宽,33M的PCI总线时钟频率。主要功能与特性如下:  (1)符合PCI2.1规范的目标,接口芯片支持低成本从属适配器;  (2)支持非复用或多路复用8位、16位、32位局部总线;  (3)串行E2PROM用于装载配置信息;  (4)具有5个局部地址空间和4个局部地址空间的片选信号;  (5)支持局域总线与PCI时钟的异步运行。2.3总体设计思想  适配器采用存储器共享的方式实现DSP与PC的数据交换

4、。其中共享存储器选用集成双口RAMIDT7130。IDT7130容量为1kb,其左口连接DSP2407,右口连接PCI9052,使用存储器寻址方式。同时,对IDT71302个端口的仲裁采用的是中断线的方式。片上的DSP和PC机通过互发中断来读取IDT7130的数据。这样使IDT7130成为上位机和DSP的数据交换中介,DSP能够实时处理从上位机传来的命令和数据,同时把各个CAN节点的信息传给上位机。利用一块串行E2PROM(93CA6B)存放适配器的PCI配置信息。上电后访问93C46B,实现本适配器的自动配置。Altera公司的EPM7064S完成地址译码和逻辑控制。适配器原理图如图

5、1所示: 2.4电源、地及噪声的处理  在本设计中对电源的处理首先将模拟部分的电源和数字电路部分的电源进行隔离,即分别供电。模拟电路部分的5V电源分别取自PCI总线上的12V电源,经线性稳压后,再经去耦、滤波后引至专门设计的模拟电源平面。数字部分的5V电源直接取自PCI总线上的5V电源。数字部分的3.3V电源亦取自PCI总线上的5V电源,经稳压后得到。在PCB的层结构设计中也充分考虑到尽可能地保留完整、大而积的电源平面层。适配器的“地”事实上分为模拟地和数字地2部分。这2部分最终在电源平面入口处相连。使得模拟地相对干净。从而减少叠加到信号上的噪声,有利于提高信噪比。3适配器的硬件设计 

6、 适配器的硬件设计主要包括2部分:PCI适配器驱动软件部分和DSP数据采集处理软件部分。3.1PCI适配器驱动程序设计  由于PCI设备的中断,1/0端口、映射内存等资源都是动态分配的,必须编写驱动程序管理硬件,才能供用户编程使用。考虑到适配器的通用性和兼容性,驱动程序的开发采用支持WindowsXP,Windows2000,Windows98的WDM驱动程序。开发工具采用VisualC++6.0。WDM(WindowsDriverModel)是NT4.0内核模式设备驱动程序模型的扩展形式,是为基于Windows2000的设备驱动程序提供的一种新的开发模型。本设计使用开发工具WINDR

7、IVER大大简化驱动程序的开发。通过DiverWizard开发者很容易生成驱动程序框架,同时,WINDRIVER和VC有很好的接口。生成驱动框架后在VC中就可以通过在工程项目中加入9052_lib.c,在应用程序开头直接引用#include"9052lib.h",并0添加特定的驱动代码完成驱动程序的编写。下面是驱动程序主函数的部分代码: 3.2PCI适配器驱动程序设计  固化在DSP中的应用软件是整个系统实时运行的支撑软件。主体程序采用ASIC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。