vxworks pci+FPGA的ns16550sio的串口调试 [问题点数:50分]

Bbs1
本版专家分:0
结帖率 75%
Bbs1
本版专家分:10
Bbs1
本版专家分:0
Bbs3
本版专家分:973
VxWorks PCI驱动编程步骤
PCI 驱动编程步骤1。复制C:/Tornado/target/h/drv/<em>pci</em>目录下<em>pci</em>AutoConfigLib.h,<em>pci</em>ConfigLib.h等PCI头文件文件和C:/Tornado/target/src/drv/<em>pci</em>目录下<em>pci</em>AutoConfigLib.c,<em>pci</em>ConfigLib.c等PCI文件到BSP目录下。2。根据实际的PCI硬件定义改写或从写这些PCI文件。3
VxWorks PCI配置方法
/*      surfConfPciDevice.c        *//** 函数功能:************ 已知该类PCI设备的Vendor号,Device号和索引号myIndex,查找出该类PCI设备的MEMORY地址* 和IO地址,以及中断级,并添加第一个MEMORY的物理地址到虚拟地址的映射。** 调用实例:************ 如果有4块该类PCI设备,则调用四次函数
vxWorks mpc8270 Pci驱动
现在将mpc8270Pci.c文件放在BSP里,在sysLib.c中调用初始化函数,<em>vxworks</em>运行起来,返回的membaseCsr = 0xe3000000, rnr_membase是1M。rnrn我用shell命令 d 0xe3000000可以访问该段内存,显示值为ffrn调用写函数后再查看内存显示值还是ff。rn哪里有问题?(困扰很久了。。。)rn代码如下:rn/* include */rnrn#include "vxWorks.h"rn#include "sysLib.h"rn#include "vmLib.h"rn#include "drv/<em>pci</em>/<em>pci</em>Config.h"rn#include "drv/<em>pci</em>/<em>pci</em>IntLib.h"rnrn#define INIT_STATE_MASK (VM_STATE_MASK_VALID | VM_STATE_MASK_WRITEABLE | VM_STATE_MASK_CACHEABLE)rn#define INIT_STATE (VM_STATE_VALID | VM_STATE_WRITEABLE | VM_STATE_CACHEABLE_NOT)rnrn#define MPC8270_VendorID 0x1057rn#define MPC8270_DeviceID 0x18c0rnrn/* Typedefs */rntypedef structrnrn UINT32 membaseCsr;rn UINT32 regbaseCsr;rn char irq;rn UINT32 <em>pci</em>Bus;rn UINT32 <em>pci</em>Device;rn UINT32 <em>pci</em>Func;rn UINT memLength;rnMpc8270PciResource;rnrntypedef structrnrn UINT32 vendorID;rn UINT32 deviceID;rn int index;rnPciBoardResource;rnrn/* Locals */rnLOCAL PciBoardResource Mpc8270BrdRs = rnMPC8270_VendorID, MPC8270_DeviceID, 0;rnrn/* Globals */rnMpc8270PciResource *Mpc8270PciRs;rnrn/****************************************************************rn*rn*rn*rn*/rnvoid mpc8270Init(void)rnrn int <em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func;rn UINT32 membaseCsr;rn UINT32 regbaseCsr;rn UNIT32 r_membase;rn char irq;rnrn /* find PCI device */rn if(<em>pci</em>FindDevice(Mpc8270BrdRs.vendorID,Mpc8270BrdRs.deviceID, Mpc8270BrdRs.index, &<em>pci</em>Bus, &<em>pci</em>Device, &<em>pci</em>Func) != OK)rn rn logMsg("Mpc8270 not found\n", 0, 0, 0, 0, 0);rn return;rn rnrn /* registers */rn <em>pci</em>ConfigInLong(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_BASE_ADDRESS_0, &regbaseCsr);rnrn /*local memory space */rn <em>pci</em>ConfigInLong(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_BASE_ADDRESS_1, &membaseCsr);rnrn /* irq */rn <em>pci</em>ConfigInByte(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_DEV_INT_LINE, &irq);rnrn /* check the desired memory of mpc8270 */rn if(!(membaseCsr & PCI_BAR_SPACE_IO))rn rn <em>pci</em>ConfigOutLong(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_BASE_ADDRESS_1, 0xffffffff);rn <em>pci</em>ConfigInLong(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_BASE_ADDRESS_1, &r_membase);rn r_membase = ~r_membase;rn r_membase = r_membase + 1;rn rnrn /* mask off registers */rn membaseCsr &= PCI_MEMBASE_MASK;rnrn /* memory map */rn if(sysMmuMapAdd((void *)membaseCsr,rn r_membase,rn INIT_STATE_MASK,rn INIT_STATE) != OK)rn rn logMsg("Unable map requested memory\n", 0, 0, 0, 0, 0);rn returnrn rnrn Mpc8270PciRs-><em>pci</em>Bus = <em>pci</em>Bus;rn Mpc8270PciRs-><em>pci</em>Device = <em>pci</em>Device;rn Mpc8270PciRs-><em>pci</em>Func = <em>pci</em>Func;rn Mpc8270PciRs->membaseCsr = membaseCsr;rn Mpc8270PciRs->irq = irq;rnrn /* enable memory space */rn <em>pci</em>ConfigOutWord(<em>pci</em>Bus, <em>pci</em>Device, <em>pci</em>Func, PCI_CFG_COMMAND, PCI_CMD_MEM_ENALBE | PCI_CMD_MASTER_ENABLE); rnrnrnvoid MPC8270_WriteByte(UINT32 membaseCsr, UINT dwOffset, char data)rnrn UINT32 dwAddr;rnrn dwAddr = membaseCsr + dwOffset;rn *(char *)dwAddr = data;rnrnrn现在将mpc8270Pci.c文件放在BSP里,在sysLib.c中调用初始化函数,<em>vxworks</em>运行起来,返回的membaseCsr = 0xe3000000, rnr_membase是1M。rnrn我用shell命令 d 0xe3000000可以访问该段内存,显示值为ffrn调用写函数后再查看内存显示值还是ff。rn哪里有问题?(困扰很久了。。。)
VxWorks PCI配置方法
/* surfConfPciDevice.c */ /* * 函数功能: *********** * 已知该类PCI设备的Vendor号,Device号和索引号myIndex,查找出该类PCI设备的MEMORY地址 * 和IO地址,以及中断级,并添加第一个MEMORY的物理地址到虚拟地址的映射。 * * 调用实例: *********** * 如果有4块该...
vxworks 下PCI驱动步骤
<em>vxworks</em> 下驱动 PCI 驱动编程步骤
VxWorks开发PCI
我最近在学习在PowerPC跑VxWorks操作系统。VxWorks操作系统已经可以慢慢的板子上跑起来了。。。我想着在VxWorks上开发一个什么小的应用程序来练练手,,于是乎,我就想着通过PCI接口来操作一块外部的存储器了。也就是我将一块存储器挂在了PCI总线上。。我想通过从PCI接口输出地址和数据来对存储器进行读写。。但是,我不会操作了。我不知道怎么样才能从PCI接口有数据输出来(PCI接口地址为0xe0300000)。我本来想着是用指针来读取某一个特定的地址的数,我可以用指针来读到Nor Flash上某一个特定的地址上的数,但是在一读到PCI接口地址的数的时候,就报错,。。我知道这样做不对。。rnrnrnrn但是我不知怎么做才是对的了。。求高人指点!rnrn谢谢了!
vxworks pci驱动解析
PCI驱动分为两种类别: 1.CPU通过io方式访问的PCI设备驱动 2.dma方式的PCI设备驱动 其实就是两种方式 在io方式下访问PCI/SRIO设备 通过outbound寄存器将本地存储器映射到remote端<em>pci</em>设备 --------------------------------IOMMU过程 同时一般需要将CPU物理地址转换成本地存储器地址
vxWorks下进行串口调试
vxWorks下进行<em>串口调试</em>,目标机一端总出现如下信息:rnFatal WTX error (0x10136), synchronization stopped rnFatal WTX error (0x1012f), synchronization stopped rnrn原因我知道,同步符号表时出现问题,终止。如何解决?是不是<em>vxworks</em>的工程缺少什么组建。rn如何解决?网口调试没有任何问题,WDB连接选择为串口就不行了。不知道为什么?rnrn<em>串口调试</em>中target server可以连上,情况如下,但是目标机会出现synchronization stopped现象。rnTarget connection has been lost.rnWaiting for target server to attach to target (press CTRL+Break to stop) |rnRestarting shell...rnrn ///// ///// ///// ///// ///// |rn ///// ///// ///// ///// ///// |rn ///// ///// ///// ///// ///// |rn ///// ///// ///// ///// ///// |rn ////// ////// ////// ////// ////// | rn ////// ////// ////// ////// ////// | T O R N A D O rn ///// ///// ///// ///// ///// | rn ///// ///// ///// ///// ///// | rn ///// ///// ///// ///// ///// | Development Systemrn //// //// //// //// //// | rn //// //// //// //// //// | rn //// //// //// //// //// | Host Based Shellrn //// //// //// //// //// | rn //// //// //// //// //// | rn /// /// /// /// /// | Version 2.2rn /// /// /// /// /// | rn // // // // // |rn // // // // // |rn // // // // // |rn // // // // // |rnrn Copyright 1995-2003 Wind River Systems, Inc.rnrnC++ Constructors/Destructors Strategy is AUTOMATICrnrn-> rn
vxworks pci驱动开发问题
最近在<em>vxworks</em>5.5下开发<em>pci</em>板卡的驱动,遇到了很多问题,想请教一下高手,如下:<em>pci</em>的.c和.h文件都写完了,为了以后便于文件使用方便,我就生成一个静态库连接的.a文件,建立一个download工程,把它编译为了.a文件,然后有加到了BSP下,也改写mkaefile文件,然后build boot rom ,编译成功,最后在建立一个bootable <em>vxworks</em> image工程编译通过,到这步我认为是没有错误的,如有错误请高手指出,接下来就重新做boot,让后启动在把<em>vxworks</em>镜像下载到目标机里,在shell下输入devs却没发现我的驱动挂载,我也在.c里加入了iosDrvInstall、great、iosDevadd函数,请高手帮忙解答,实在是头疼了好几天,先谢谢大家了
FPGA的PCI代码
在FPGA上实现PCI接口的IP核,VHDL源码。
fpga 图像采集卡 pci
<em>fpga</em> 采集卡 <em>pci</em> 该系统采用4片XC3SDl800A作为处理核心 使用DDR2 SDRAM高速存 储实时数据 作者通过全面的分析 设计了核心板 底板和应用板分离系统架构 该平台能够根据实际需求进行灵活的搭配 核心板之间的数据传输采用了LVDS 低电压差分信号 技术 从而使得数据能够稳定的以非常高的速率进行传输 "><em>fpga</em> 采集卡 <em>pci</em> 该系统采用4片XC3SDl800A作为处理核心 使用DDR2 SDRAM高速存 储实时数据 作者通过全面的分析 设计了核心板 底板和应用板分离系统架构 该平台能够根据实际需求进行灵活的搭配 核心板之间的数据传输采用了 [更多]
FPGA与PCI总线
基于FPGA的PCI总线从接口IP核的设计与实现
PCI总线配置FPGA
除了用JTAG配置FPGA外,也可以用PCI总线配置,本文就是基于PCI总线配置FPGA
FPGA的PCI接口设计
基于FPGA的PCI接口设计_胡和平, 学位论文
基于FPGA的PCI
基于FPGA的PCI是打发发生的广泛低合金钢
基于FPGA的PCI接口设计
硕士生优秀论文!现场可编程门阵列(FPGA)可编程器件得到了广泛运用,基于这些可编程器件的先进硬件设计技术得到了广泛的发展。
FPGA 串口调试 源代码
FPGA <em>串口调试</em>的源代码,用verilog实现
fpga——PCI源代码
用vhdl写的<em>pci</em>接口的源代码,很难得。。。。。。。
基于vxworks的PCI设备驱动编写
最近几天,在为公司自研的PCI板卡写
vxWorks的PCI配置方法和应用实例
vxWorks的PCI配置方法和应用实例
vxworks 中读写pci寄存器
在开发<em>vxworks</em>中,经常要读写<em>pci</em>的寄存器,实现下述函数: void <em>pci</em>Read(    int        bus,           /* bus */    int        device,        /* device */    int        function,      /* function */    int        offset
PCI总线在VxWorks中的实现
PCI总线在VxWorks中的实现   1、Overview 在最近发布的BSP中,风河公司基本上都提供了对PCI BUS的支持,本文主要探讨PCI BUS在VxWorks系统中的实现。 2、PCI Address Space and Memory Mapping PCI BUS有三种地址空间:IO Space、Memory Space and Configuration Space。每
fsl_e500 pci设备驱动vxworks的实现
开发环境:风河workbench3.2 —<em>vxworks</em>6.8  ,目标板:飞思卡尔powerpc mpc8536         NI PXIe机箱。 问题描述:目标板由NI公司的PXIE机箱供电,并插入零槽作为主控制器,现在实验室有自己研发的AD数据采集模块,也想插入机箱其他槽其作为目标板mpc8536的外设模块,二者通过机箱进行通信。 现在vxWorks系统起来了,串口\网口等驱动
MPC8260与FPGA在VXWORKS下的通信
各位大哥,我刚接触VXWORKS不久,请大家指教。实验室有块powerpc104开发板(含有MPC8260+FPGA),8260与FPGA通过64位数据总线和32位地址总线(好像就是60X总线)连接,购买板子已自带BSP,怎么实现8260与FPGA在VXWORKS下的通信(中断,数据传递)啊?谢谢了
VxWorks下PCI总线设备驱动程序设计
随着VxWorks 操作系统在嵌入式系统中的应用, VxWorks 下产品的开发和应用也越来越广泛。本文描述了VxWorks 下PCI 数据采集模块驱动程序的设计过程,即通过PCI 总线桥接芯片CY7C09449PV的配置,实现中断和DMA 数据传输、完成PCI 设备的初始化和驱动接口函数及实现数据采集功能。
基于FPGA实现的PCI 协议
基于FPGA实现的PCI 协议,是某人号称2000元买的
S1300 PCI FPGA验证平台
S1300 PCI FPGA验证平台rn rnS1300 PCI FPGA开发实验板采用PCI接口,方便用户进行自主开发,用户可以自行设计应用接插板,如外部AD数据采集,图象数据处理等系统应用,而不需要对PCI接口有过多的了解。rn核心FPGA芯片采用ALTERA公司的新型CYCLONE FPGA系列,rnEP1C6Q240C8(标准配置)EP1C12Q240C8,容量分别为600012000个逻辑宏单元,rn等效于标准15万30万逻辑门电路,速度为-8,编译后系统速度可以达到100MHz,rn可以支持ALTERA 公司的SOPC内核NIOS2系统的开发,NIOS2开发环境编译后的rn可执行文件可以通过PCI接口下载到开发板上的FLASH中去;rn免费提供ALTERA QUARTUS2 4.1和NIOS2 1.01开发工具光盘;rn开发板支持AS和PS下载方式,随开发板免费提供ALTERA rnBYTEBLASTER 2下载电缆一根,供用户使用;rn提供NIOS2 CPU开发指南及技术支持;rnrnPCI接口主板的外部总线接口支持8、16、32位数据总线,可以直接和CPU、SDRAM、FIFO、外部接口芯片等设备直接相连。rn以下是FPGA开发板内部IP核接口rn rnPCI总线2.2标准,32位总线,完全VHDL源代码设计提供;rn支持PCI总线配置读、配置写;rn支持PCI总线IO读、IO写;rn支持PCI总线BUS MASTER 读、BUS MASTER 写;rn支持内部DMA中断和外部总线输入中断产生;rn支持两个PCI IO空间,大小为256字节;rn支持一个PCI内存空间,大小为4M字节;rn支持PCI突发访问方式,突发长度为8至128个双字长度;rn用户可自己定义设备ID和制造商ID; rnrn1个NIOS2 CPU内核,供用户测试使用;rn1个FPGA内部16C450串口,完全VHDL内核提供;rn1组4MX32位SDRAM,容量最高支持到64MX32位的SDRAM接口,完全VHDL内核SDRAM接口源代码提供;rn1组16位FLASH(29LV800BB),1M字节,可以扩充至32位,最高16M字节FLASH,完全VHDL源代码设计提供,提供NIOS2 CPU引导程序;rn4通道开关量输出,集电极开路输出,500ma驱动电流,可扩展至64路开关量输出;rn4通道开关量输入,光隔离输入,可扩展至64路输入;rn1个7段数码管显示输出,提供直接显示功能,方便用户进行FPGA的开发和调试;rn4个LED状态指示灯输出,提供调试和测试使用,完全VHDL内核源代码提供;rn2个按键输入,提供外部输入中断测试功能,供用户进行测试和调试使用;rn外扩标准32位数据总线,提供dma数据传送能力和测试程序;rn 以上功能均提供PCI接口进行访问和操作,提供DOS,WINDOWS98WINDOWS2000,WINDOWS XP的WDM驱动程序和测试程序的源代码。rn 随FPGA开发板免费提供QUARTUS4.1和NIOS2 1.01开发工具光盘,以及ALTERA BYTEBLASTER 2下载电缆一根;开发板支持AS下载方式;rn更多产品信息,欢迎登录网站或电话查询。rnrn网址:http://www.dz51.cn http://www.dz51.comrnrn直销地址:北京市海淀区新中发电子市场2楼2136柜台(原老中发2112柜台不再销售产品) rn电话: 010-82625208 手机:13671276968 rn销售部地址:北京市海淀区知春大厦A座606室 (知春电子城西侧自动门进入电梯到六层)rn电话: 010-51299598 010-62535108转11分机 传真:010-62535108-17rnrn E-Mail: dz51.com@163.com dz51123@sohu.com dz51123@sina.comrn QQ:349646210 (dz51验证) MSN:dz51.com@163.comrn联系人:孙婧云rnrn 顺祝rn rn商祺!rnrn
基于pci总线配置fpga
PCI总线配置FPGA Altero公司的产品
基于FPGA的PCI设计.exe
真的很不错,快来下,不要忘记顶一下
基于FPGA的一种PCI接口设计
基于FPGA的一种PCI接口设计,大家可以下载看看
基于FPGA的PCI接口的设计
使用FPGA设计PCI方法的详细过程,包括了FPGA最小系统的设计及SOPC开发技术
基于FPGA的PCI总线接口设计
基于FPGA的PCI总线接口设计,VHDL设计。
基于FPGA的SDRAM串口调试RTL…
原文地址:基于FPGA的SDRAM<em>串口调试</em>RTL视图作者:SUN_403
VxWorks下PCI总线设备驱动程序设计.pdf
VxWorks下PCI总线设备驱动程序设计
求教vxworks下对 pci地址空间的映射
小弟最近在研究一个<em>pci</em>电子盘驱动, 看了<em>pci</em>的协议,但是对<em>vxworks</em>下对<em>pci</em>内存映射的实现十分好奇。。。 在此先感谢各位了。。。rnrn在源码中 有如下初始化的代码, 分别配置了 IOBASE IOLIMIT MEMBASE MEMLIMIT这些寄存器。 IOBASE和MEMBASE都是指的PCI地址空间的地址。rn <em>pci</em>ConfigOutByte(pex8112BusNo, pex8112DevNo, pex8112FuncNo,0x1c,rn 0xd0);/*IOBASE*/rn <em>pci</em>ConfigOutByte(pex8112BusNo, pex8112DevNo, pex8112FuncNo,0x1d,rn 0xe0);/*IOLIMIT*/rn <em>pci</em>ConfigOutWord(pex8112BusNo, pex8112DevNo, pex8112FuncNo,0x20,rn 0xfc00);/*MEMBASE*/rn <em>pci</em>ConfigOutWord(pex8112BusNo, pex8112DevNo, pex8112FuncNo,0x22,rn 0xfc00);/*MEMLIMIT*/rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_0,rn 0xdc00);rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_1,rn 0xda00);rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_2,rn 0xd800);rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_3,rn 0xd600);rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_4,rn 0xd400);rn <em>pci</em>ConfigOutLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_5,rn 0x900FF800);rnrnrnrnrnrn在另外一个文件中,我找到了另一个代码, 这段代码应该是把IOBASE MEMBASE映射到虚拟内存rn <em>pci</em>ConfigInLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_0,&baseAddr);rn ataResources[0].resource.ioStart[0] = (baseAddr & PCI_TARGET_MASK)+0xfe000000;rn <em>pci</em>ConfigInLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_1,&baseAddr);rn ataResources[0].resource.ioStart[1] = ((baseAddr & PCI_TARGET_MASK)+2)+0xfe000000;rn <em>pci</em>ConfigInLong(mav9125BusNo, mav9125DevNo, mav9125FuncNo, PCI_CFG_BASE_ADDRESS_4,&baseAddr);rn ataResources[0].resource.ioStart[2]= (baseAddr & PCI_TARGET_MASK)+0xfe000000;rnrn以bar0 寄存器为例,bar0中被写入0xdc00,这个0xdc00是<em>pci</em>域地址, 而在ataResources中bar0又被映射到0xfe00dc00(iostart[0]),这个0xfe00dc00应该是虚拟内存地址(因为我看到后面的代码直接访问0xfe00dc00 加偏移值 就能访问bar0中的相应存储器内容),我想问下其如何实现将虚拟内存中的0xfe00dc00这段内存映射到<em>pci</em>中的dc00的??小弟实在没有在驱动和bsp中找到关于映射的代码,难道这段代码就是映射关系表吗? 如果是,那我将0xfe000000改成0xab000000行吗? 这个改变自己能够随意决定吗? rnrn我看过相关笔记中写过一个sysMmuMapAdd 这样的函数,其实现过程是将虚拟地址与物理地址直接相等,那么对于任何一个bsp来说,都是这样的吗? rnrn先谢谢各位了。。。
vxworks和Linux pci转串口卡调试
第一、<em>vxworks</em>下 <em>pci</em>转串口卡调试 1.网上查看是否有显示<em>pci</em>设备的函数,查到<em>pci</em>DeviceShow 2.在<em>vxworks</em> help中输<em>pci</em>DeviceShow,可以看到 <em>pci</em>ConfigShow NAME <em>pci</em>ConfigShow - Show routines of PCI bus(IO mapped) library ROUTINES <em>pci</em>
实时操作系统VxWorks下PCI总线配置技术
实时操作系统VxWorks下PCI总线配置技术 实时操作系统VxWorks下PCI总线配置技术
VxWorks下PCI 1553板驱动程序的开发
VxWorks下PCI 1553板驱动程序的开发 <em>pci</em>配置信息的设定,终端的设定等
VxWorks系统的PCI总线配置与应用
VxWorks系统的PCI总线配置与应用,结合实例进行分析
VxWorks下多块PCI板卡的内存映射问题
问题描述如下:现在把8块IO板卡和2块AD板卡都插在了PCI机箱中,[color=#FF6600]在sysHwInit[/color]函数中添加板卡设备初始化函数,主要进行内存映射操作。先前是采用for循环的形式对8块IO板、2块AD板进行初始化,在syslib.c文件中,sysHwInit函数中,(在PCI初始化之后,usrMMuMap函数之前)函数IO_Init放在前面,AD_Init函数放在后面,但是只能正确映射三块IO板,另外的几块IO板映射不了,AD也映射不了。后来在syslib.c文件中,把AD_Init放在前面,IO_Init放在后面,发现2块AD板能映射,IO板只能映射第一块,以上看来,在数量上只能映射三块板卡。后来,对于IO板的初始化函数,我把每块板卡单独映射,不采用for循环映射,将8块IO板卡的初始化函数分别放到syslib.c文件中,后来发现还是只能映射三块板卡,这让我很不解,不可能在映射板卡数量上会有限制吧?希望大家能给些指导,非常感谢,急!!!rn
VxWorks操作系统下PCI总线驱动设计
实时操作系统VxWorks 是当今非常流行的嵌入式操作系统。PCI 局部总线实现了周边设备与中央处理器 的高速互连。文中介绍了在VxWorks 操作系统下PCI 总线驱动的特点以及编写PCI 总线驱动程序的详细过程。
pci串口板vxworks下的配置及接口函数源代码
<em>pci</em>串口板<em>vxworks</em>下的配置及接口函数源代码 包括<em>pci</em>端口配置、串口配置、接收函数等 成功通过测试
vxworks求助(关于pci配置和存储器映射)
刚学<em>vxworks</em>不久,用的开发环境是tornado5.5,最近想使用一个<em>pci</em>的8串口板,设备是映射到存储器空间的而不是IO空间,硬件环境是PC104+,<em>pci</em>配置方式是动态配置,代码如下:rn#include "<em>vxworks</em>.h"rn#include "tasklib.h"rn#include "syslib.h"rn#include "config.h"rn#include "vmlib.h"rn#include "drv/<em>pci</em>/<em>pci</em>ConfigLib.h"rnrn#define xxx_DEBUG /*这里定义每一个VID和DID*/rn#define xxx_VENDOR_ID 0x13A8rn#define xxx_DEV_ID 0x0158rn rn#define xxxUNKNOWN 0rn#define xxx_MAX_UNITS 1 /*每一个板卡的资源*/rntypedef struct xxxResource /* xxx_RESOURCE */rnrn int BoardVID;rn int BoardDID;rn int unitInx;rn xxx_RESOURCE;rn/*板卡资源的定义,这里以相同的板卡为例子rn板卡如果相同的话unitInx逐次递增,如果不同rn的话则从零开始*/rnLOCAL xxx_RESOURCE xxxRes [xxx_MAX_UNITS] =rn rn xxx_VENDOR_ID, xxx_DEV_ID, 0,rn ;rnrn/*这里就是PCI初始化部分了*/rnvoid xxxPciInit (void)rn rn xxx_RESOURCE *pReso;rn int <em>pci</em>Bus;rn int <em>pci</em>Device;rn int <em>pci</em>Func;rn int unit;rn int iCommand;rn BOOL duplicate;rn UINT32 membaseCsr;rn UINT32 r_membase;/*用于计算地址映射的空间*/rn char irq;rn int ix;rn rnrn for (unit = 0; unit < xxx_MAX_UNITS; unit++)rn rn /*寻找板卡*/rn if (<em>pci</em>FindDevice (xxxRes[unit].BoardVID, xxxRes[unit].BoardDID,rn xxxRes[unit].unitInx, &<em>pci</em>Bus, &<em>pci</em>Device, &<em>pci</em>Func) != OK)rn break;rn pReso = &xxxRes [unit];rn /* PCI_CFG_TYPE can be defined to PCI_CFG_NONE,PC_CFG_AUTO,or PCI_CFG_FORCE.*/rn /* 在X86下,BIOS会分配好资源的,所以不需要再配置了*/rn for(ix=0; ix, r_membase);rn continue;rn#endifrn /*此时就可以将内存映射过去了*/rn if (sysMmuMapAdd((void *)membaseCsr, r_membase,rn VM_STATE_MASK_FOR_ALL, rn VM_STATE_FOR_PCI) == ERROR)rn break; rn rn rn rnrn将这个文件保存在bsp目录下,然后在syslib.c里包含,在函数sysHwInit()里调用,rn该代码来自所买的参考书,现在的问题是:rn1、如果配置成功,和pc104连接的显示器上会打印出memory is 。。。和length is。。,可是屏幕上没有出现rn2、如果对<em>pci</em>设备存储器空间进行地址映射后,如何使用这个地址,配置函数没有显示哪里可以将指针传出去?rn3、如果屏幕上没有打印出配置结果,是不是打印到别的地方了?rn4、我把这个函数放到usrAppInit()中运行,显示能够找到设备,读出<em>pci</em>的基地址是0xffeb1f000,地址长度为0xfffff000,地址超出了我的pc104实际内存,显然不对,这是为什么?rn请高手帮忙解答,很纠结。。。。。rn还有,如何配置<em>pci</em>设备,配置后如何使用?rnrn
求助vxworkspci驱动问题 vxbus
目前在vxwork下面做一个<em>pci</em>板子的驱动 当前目标是读写寄存器 用的是vxbus 系统是64位的rn首先在BSP中注册用有dr dc mk .c IMAGE里面没有注册这个硬件rn(struct vxbDevRegInfo *)NULL,rnVXB_DEVID_DEVICE,rnVXB_BUSID_PCI,rnVXB_VER_5_0_0,rn"<em>pci</em>e",rn&PciExFuncs,rnPciEx_methods,rnNULL, rnNULLrn, rnNELEMENTS(DevIDList), rnDevIDListrn然后在PciExInstInit2 里面做了初始化和映射rnvxbRegMap(pInst, 0, &pDrvCtrl->regHandle);rn启动vxwork系统以后 通过串口输出调试 用vxbusshow能够看到这个硬件的信息rnpInst->pRegBase[0]这个里面是有地址的,这个应该就是basememory吧?0xffff800024021000rn我当时也注册了两个method用来给应用调用 分别是read和writern我在image的usrAppInit函数里面用vxbDevMethodRunrnvxbDevMethodRun(DEVMETHOD_CALL(busCtlrDevCfgWrite),19) != OK)rn发现vxbDevMethodRun返回是成功的 但是没有进入我自己写的write函数rn如果在BSP的usrAppInit函数里面用vxbDevMethodRun去write一个值 vxwork启动的时候在bsp那里就会报错rnPciExMethodDevCfgWrite函数内容如下 addr是我用来测试的一个offset 是可以进行read和write的rnvxbWrite64 (PCIEX_HANDLE(pDev),rn (UINT64 *)((UINT64)pDev->pRegBase[0] + (UINT64)addr),rn data);rnrn
怎样开发VxWorks PCI板卡驱动
现有一块<em>pci</em>板卡,有Win2000驱动源代码,需要将它移植到VxWorks下。rnrn我没高过VxWorks,对Tornado非常不熟悉,没有思路。rnrn如果有高手肯出手相助,我出钱。
一个PCI配置空间的问题 vxWorks
一个PCI配置空间的问题 vxWorks一个PCI配置空间的问题 1)<em>vxworks</em>下从PCI配置空间的基地址寄存器不写1得到的是PCI设备的寄存器物理基地址还是经过映射后的虚拟地址?2)还有一个问题是c语言中嵌入汇编,汇编操作的地址是物理地址还是虚拟地址?在<em>vxworks</em>的PCI自动配置好像有这么一个过程:1)在基地址寄存器中写入全1,读出其需要的容量大小,2)分配一个虚拟地空间块,
VxWorks平台下的PLX9054 PCI桥芯片驱动
VxWorks平台下的PLX9054 PCI桥芯片驱动。 可以参考。
串口调试串口调试串口调试
很好用那个的 法国地方官发动广大房改房德国官方大国
fpga实现pci配置空间的读写
利用FPGA实现PCI配置空间的读写,参考博客http://blog.csdn.net/li171049/article/details/17655065
基于FPGA的低成本PCI Express解决方案
PCI Express作为PCI的后继标准正在迅速确立其地位。该标准可以为下一代系统提供更高的性能、更强的灵活性以及可升级性,同时保持与现有PCI设备的软件兼容性。随着PCI Express逐渐成为前沿嵌入式应用的互连标准,系统设计人员必须满足与这一新协议可用性相关的一些挑战。目前的FPGA就可以为低成本产品市场提供易用的PCI Express解决方案。    随着FPGA的密度大幅提
高速PCI信号采集卡FPGA设计与实现
《FPGA应用入门与典型实例》中介绍的PCI信号采集卡设计的实例
基于FPGA的PCI接口控制器状态机的分析
本附件是基于FPGA的PCI接口控制器状态机的分析
基于FPGA的PCI数据采集卡的研究与开发
基于FPGA的PCI数据采集卡的研究与开发 基于FPGA的PCI数据采集卡的研究与开发
基于FPGA和PCI总线的数据采集板设计
文中根据FPGA 以及PCI 总线技术,全面阐述 了一种高速、大容量数据采集卡的实现方案
PCI总线接口的FPGA设计与实现
PCI总线接口 的FPGA设计与实现
PCI总线协议的FPGA实现及驱动设计
PCI总线协议的FPGA实现及驱动设计
FPGA与PC上的串口调试助手通信(verilogHDL)
利用<em>串口调试</em>助手是实现pc机和<em>fpga</em>的串口通信功能,程序附注释。
基于FPGA的PCI总线接口桥接逻辑设计
基于FPGA的PCI总线接口桥接逻辑设计 基于FPGA的PCI总线接口桥接逻辑设计
基于PCI和FPGA的高速数据采集卡硬件设计
基于PCI和FPGA的高速数据采集卡
FPGA高速PCI信号采集卡设计与实现
实战训练 高速PCI信号采集卡设计与实现
powerpc860 在vxworks下 和FPGA的以太网通信问题?
小弟在做毕业设计,毫无头绪,希望大侠帮忙!rn如何连接!
串口调试串口调试
<em>串口调试</em><em>串口调试</em>
PCI
系统重装后没声音,系统中PCI DEVICE 前面有个黄色的感叹号.应该怎么解决?大家指点一下
pci
如何在dos下枚举<em>pci</em>设备,用汇编写,哪位高手请赐教!rnlove_ljx@hotmail.com
pci???????
我在装笔记本驱动的时候我经常会遇到<em>pci</em>简易通讯?PCI桥?我以见PCI我就慌了,我以前认为只要芯片组驱动打上就没事,但我遇到好几次,打上没反应,到最后还要让我老大来打,我想问各位有什么好方法?帮我!
VxWorks操作系统中对PCI总线驱动程序的设计与实现
VxWorks操作系统中对PCI总线驱动程序的设计与实现
串口调试
摄像头车数据量大,必须在数据采集完后进行分析滤波,才能拿来对舵机和电机进行控制。如今我正在做第一步采集数据,采集数据最简单的调试方法就是使用串口,我走的真是艰难啊,走一步一步血印,采集到数据后已发送数据就是乱码,这个明显是波特率问题,最终我花了一天的时间调试这个波特率,庆幸的是我成功了,原因出在,我没有理解什么是系统时钟,什么是总线时钟!<em>串口调试</em>问题解决了,新的问题自然又来了,中断函数出了问题,这
VxWorks 操作系统中PCI总线驱动程序的设计与实现
VxWorks 操作系统中PCI总线驱动程序的设计与实现
高分,急寻vxworks pci板卡设备驱动源码(c)。
各位:对着c++摸索了好多天,也没有搞定,倾家荡产寻求<em>vxworks</em>的<em>pci</em>板卡设备c驱动源码。rn100分奉上,万分感激!!!rnleftpoint.g@gmail.comrn抱歉,只有89分了。rn
mpc 8548 vxworkspci从设备怎么配置?
mpc 8548 <em>vxworks</em>的<em>pci</em>从设备怎么配置?我要把mpc这端配置成从设备。 有没有谁写过的类似的驱动给俺参考一下?谢谢
串口调试。。。。。。
<em>串口调试</em>。。。。。。。。。。。。地。。。。。。。。
PCI配置空间 PCI PCI配置空间 PCI配置空间 PCI PCI配置空间
PCI配置空间 PCI PCI配置空间 PCI配置空间 PCI PCI配置空间
ssh网摘,工作中遇到的问题下载
自己工作中遇到的问题,在网上找的解决方案。 相关下载链接:[url=//download.csdn.net/download/herosen/2808051?utm_source=bbsseo]//download.csdn.net/download/herosen/2808051?utm_source=bbsseo[/url]
极好的批量重命名工具下载
一款功能强大的免费文件管理器。便于对文件进行复制/移动、复制/剪切/粘贴、删除/擦除、重命名、修改属性/时间、合并、分割、高级批量重命名等操作,支持简体中文. 尤其是批量重命名功能极强 相关下载链接:[url=//download.csdn.net/download/jsjwl1228/3143290?utm_source=bbsseo]//download.csdn.net/download/jsjwl1228/3143290?utm_source=bbsseo[/url]
Gparted 磁盘分区编辑器操作基础下载
1. 用于学习Ubuntux/Linux 中图形界面磁盘分区工具的教程,教程共6课; 2. 网页压缩包格式,解压在当前文件夹,双击打开index.html即可 相关下载链接:[url=//download.csdn.net/download/teliute/4774734?utm_source=bbsseo]//download.csdn.net/download/teliute/4774734?utm_source=bbsseo[/url]
相关热词 c# 线程顺序 c#昨天当前时间 c# 多进程 锁 c#mysql图片存取 c# ocx 委托事件 c# 读取类的属性和值 c# out 使用限制 c#获取url的id c#怎么进行分页查询 c# update 集合
我们是很有底线的