VxWorks如何添加新驱动

VxWorks如何添加新驱动,第1张

在vxworks6.x下添加一个新的驱动,一般需要添加6个文件,分别是

target/src/hwif/xxx 下

xxx.c 和 xxx.mk --- 源文件和makefile文件

target/src/hwif/h/xxx 下

xxx.h -- 头文件

target/config/comps/vxworks下

xxx.cdf -- cdf文件用于被workbench识别

target/config/comps/src/hwif下

xxx.dc xxx.dr - dc dr用于命令行编译

新加一个串口驱动需要添加的文件列表

vxbUccSio.c

vxbUccSio.h

vxbUccSio.mk

vxbUccSio.dc

vxbUccSio.dr

40vxbUccSio.cdf

注意:如果是命令行编译的话(make),你还需要执行下面的内容,否则新驱动还是没有被更新到库文件中

If you have added/modified files in /target/config/comps/src/hwif folder, you need to re-create vxbUsrCmdLine.c. Move to /target/config/comps/src/hwif and execute make vxbUsrCmdLine.c

cd target/config/all/vxbUsrCmdLine.c

rm -f vxbUsrCmdLine.c

cd  /target/config/comps/src/hwif

make vxbUsrCmdLine.c

vxWorks6.x以后,原则上是不需要也不应该把驱动添加到bsp中去,可以这样讲,引入vxWorks6.x就是为了解决这个问题,bsp中通用驱动太多。驱动都是放在target/src/hwif这个目录里的,然后把驱动写成vxBus类型,在config。h或者workbench中加入相应的组件来加入驱动,当然驱动需要的参数,如基地址,中断等等信息是放在hwconf.c文件中,vxworks6.x以后的驱动应该这样去加. 如果不是vxBus的驱动话,最简单的办法就是 把你的驱动放在bsp目录下,然后再sysLib.c中加入这个文件即可,如 include "xxxx.c"

首先,你的CPU主处理器是什么?

其次,如果你的CPU是X86,就要看你选择的什么品牌和结构的CAN接口卡(一般都是SJA1000芯片),是ISA还是PCI,ISA的CAN接口卡驱动,在安装了Tornado2.2.1/VxWorks 5.5.1 for pentium的CD4 Platform ID 2.0之后就能够找到CAN卡驱动?

再次,如果你的CPU是其它架构的嵌入式处理器,建议你还是自己写驱动吧,不是很难,可以借鉴上面说的那个CAN卡驱动(这个驱动没有解决BUS-OFF的问题)。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11630927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存