02 2012 档案
摘要:pci设备驱动开发,首先是要发现pci设备,从中获得pci设备的配置空间,并从中得到基本基本的资源信息。首先进行pci设备查找的函数为:STATUS pciFindDevice( int vendorId, int deviceId, int index, int *pBusNo, int *pDeviceNo, int *pFuncNo )函数中的参数从命名来看都很好理解,注意第三个参数 ‘index’,这是在系统中有多个pci设备时我们需要从0开始查找,知道查找到我们想要驱动设备(第一个参数vendor...
阅读全文
摘要:Vxworks内核驱动基本结构:三张表:1. 系统设备表 2. 系统驱动表 3. 文件描述符表Vxworks 内部对每个设备使用DEV_HDR 数据结构进行表示:Typedef struct{ DL_NODE node; Short drvnum; Char *name;}该结构中给出了链接指针(用以将该结构串入队列中)、驱动索引号、设备节点名称。内核提供这个结构较为简单,只存储了一些设备的关键信息。底层驱动对其驱动的设备都有一个自定义数据结构表示,其中包含了驱动设备寄存器基地址,中断号,可能的数据缓冲区,保存内核回调函数的指针,以及一些标志位。最关键的...
阅读全文
摘要:基于Vxworks开发,一般都使用WindRiver work bench。 我使用的是WindRiver workbench3.0 。 下面来介绍一下如何使用WindRiver workbench。如何安装就不详细说了,在win7和xp上都可以很容易的安装成功,但是注意在选择key的时候,那是一个.txt的文件。第一步:建立工程第二步:第三步:选择Deselect All,然后根据你用的芯片来选择合适,这个主要用来生成.out文件第四步:右键点击所建立的工程,选择Properties,主要是为了配置一些参数。第五步:在Build Tools 中选择 Command 在最后加上 -mlon..
阅读全文