阅读:4128回复:9
VxWorks下Pci9054芯片的驱动问题我现在要开发一个采集卡,卡上有pci9054芯片,和CPLD,而没有处理器,希望能在VxWorks系统下实现数据采集。 请问:采集卡的驱动,是不是就是pci9054的驱动。plxSDK中提供的在VxWorks环境下的BSP是pci9054-860RDK,看了一下,好像是提供给带MPC860处理器的PCI板卡的。那么这个BSP我能用吗?或者需要那些改动? 先谢谢了! |
|
最新喜欢:beamda... |
沙发#
发布于:2004-04-20 09:15
问题太大,很难。
按照我的理解,大可以不要它的BSP了。自己写一个得了。 |
|
|
板凳#
发布于:2004-04-28 23:30
你的这个采集卡一定是用在某个可以跑vxworks系统的系统中的吧?如果是这样,我就可以假设他运行在x86体系架构下(其他架构的pci总线差别不大),那么首先让vxworks跑起来,然后再考虑驱动程序的问题。编这样的驱动程序和其他的字符型设备的驱动程序一样,可以使用字符型驱动程序的模板,因为有cpld,我想驱动程序所要做的事情只有控制和接收数据,非常简单,访问9054就一切ok了
|
|
|
地板#
发布于:2004-05-24 21:08
aquariuscamus:
你的意思是说,如果x86作为目标机跑起vxworks,而这台目标机上插的是这块儿只有PCI9054和CPLD的板子,开发一个PCI9054的设备驱动就可以了,是这样吗? 如果是这样的话,那么plxSDK光盘中提供的LOCAL API函数也用不成了,那么在vxworks下如何实现诸如DMA的功能呢? 望指教,谢谢! |
|
地下室#
发布于:2004-05-27 20:10
基本上就如你所说,有设备就可以开发驱动了。其实PCI接口对于软件来说是非常简单的,那些API都可以不用,使用VxWorks提供的几个基本函数二十句话之内就能搞定PCI设备。驱动开发关键的问题还是集中在板卡的操作上。关于DMA,每个设备都是不一样的,但是我记忆中(好久没用这么简单的桥了),应该是使用PC系统本身的DMA,这个一般会在数据手册中说明,我明天可以给你查查。
|
|
|
5楼#
发布于:2004-05-29 00:09
谢谢楼上的回答,特别感谢aquariuscamus的指点!我刚接触,刚能建立起开发环境;但对这个板卡一直不知道怎么下手,能给点儿具体的例程吗。我现在看了字符型设备驱动开发的有关内容。查到一个开发PCI驱动的步骤,您看我按下列步骤进行就可以吧。具体要注意哪些啊? 非常迫切需要您的帮助,谢谢!
1。复制C:\\Tornado\\target\\h\\drv\\pci目录下pciAutoConfigLib.h,pciConfigLib.h等PCI头文件文件 和C:\\Tornado\\target\\src\\drv\\pci目录下pciAutoConfigLib.c,pciConfigLib.c等PCI文件到BSP目录下。 2。根据实际的PCI硬件定义改写或从写这些PCI文件。 3。改写BSP配置文件 a. 在BSP 文件config.h中加入语句 #define INCLUDE_PCI (添加PCI模块)。 b. 在BSP 文件sysLib.c中加入语句 #include \"pci/pciConfigLib.c\"(主要PCI初始化函数在这个文件中)。 c。在BSP 文件sysLib.c中加入语句 IMPORT void sysOutLong(); (导入PCI需要的一些基本函数)。 IMPORT char sysInByte(); IMPORT char sysOutByte(); ................... |
|
6楼#
发布于:2004-05-30 12:11
能具体说说你使用的系统架构吗?不同的系统架构使用的办法有些差别。
另外,翻翻老帖子,可以看到我的一篇关于字符型驱动的心得。等一年的期限过后,我可以贴出来字符型驱动程序的模版,方便各位开发 。 |
|
|
7楼#
发布于:2004-06-02 14:23
系统就是用一台PC机作为目标机,然后在其上插一块自己开发的数据采集卡。该卡主要有AD电路,CPLD和PCI9054桥接芯片组成(FIFO用的是CPLD自带的)。
按您的指点,我查了您以前的帖子,收获不小,但也有不解: PCI设备驱动跟字符型设备驱动是什么关系,我看到讲PCI设备驱动的时候主要讲INCLUDE_PCI的添加和有关pci的函数和pci配置文件的修改。而字符型设备驱动主要讲的是xxDrv()和xxDrvCreate()以及xxOpen()等函数的添加和编写。 是不是两者没关系啊,还是前面工作主要是让系统认识pci设备,后面的是具体实现啊。可为什么没见两者一块儿讲的呢?还有我现在这个系统的驱动应该叫做PCI9054的驱动吧,那么我要做的工作应该是哪些呢? |
|
8楼#
发布于:2004-06-04 23:57
PCI设备和字符型设备是两个不同范围的概念。PCI设备是指接口为PCI总线的设备。而字符型设备则是相对于块设备来说的。PCI设备可以使字符型设备,也可以是其他的分类。两者属于不同的范围所以不同时出现。
你现在的事情大概可以分为三步: 1。阅读资料,包括板卡本身的硬件手册、9054的硬件手册、驱动开发手册等 2。找一个例子程序或者模版,方便开发。 3。开发驱动、调试等等 |
|
|
9楼#
发布于:2010-04-12 11:01
看了就得顶
|
|
|