当网络设备产生中断时,VxWorks调用驱动程序先前注册的中断服务程序。中断服务程序应做尽可能少的工作,以完成将数据包从本地网络设备送出/取出的操作。

2.3 文件配置

由于RTL8019兼容NE2000网卡芯片,只需要在其基础上完成必要的修改。首先将Tornado2.2\target\src\drv\end目录下的ne2000End.c和Tornado2.2\target\h\dry\end目录下的ne2000End.h拷贝到bsp目录下,然后修改以下文件。

(1) 修改ne2000End.C

①修改头文件包含目录;

②sysIntConnect修改为intConnect;

③sysLanIntenable修改为intEnable,并修改返回类型void为STATUS。

(2) 修改ne2000End.h

将寄存器地址左移1位,如:

#define ENE_RSTART(0x01《《1)

(3) 修改config.h

添加网络宏定义:

①#define INCLUDE_NETWORK

②#define INCLUDE_END

③#ifdef INCLUDE_END

#undef INCLUDE_SNGKS32C_END

#define INCLUDE_NE2000_END

#endif/*INCLUDE_END*/[page]

(4) 修改configNet.h

在endDevTbl[ ]表中添加新的装载函数(其函数命名格式为xxLoad( ))入口点及相关参数。

(5) 修改Makefile

添加MACH_EXTRA=ne2000End.o

(6) 修改sysLib.c

①添加MAC地址定义:

unsigned char ne2000EnetAddr[]=ETHERNET_MAC_ADRS;

②添加 sysInByte、sysOutByte、syslnWordString和sysOutWordString函数。

③在sysHwInit()中添加CPU端口初始化:

④在sysHwInit()中添加RTL8019芯片的复位和初始化函数。相关代码如下(有关寄存器的宏定义请参照RTL8019数据手册):

3、结 语

本文在VxWorks嵌入式实时操作系统下,提出了网络接口的解决方案,即以ARM7(S3C44B0)为核心CPU,控制网络控制器TRL8019实现网络通信。本文首先简单介绍了几款主要芯片,给出了硬件原理图;然后简要分析了VxWorks下的网络协议和驱动装载过程;最后,针对此网络接口,详细列出了VxWorks下文件配置过程,提供了部分软件源程序,对开发人员有一定的参考价值。

责任编辑:gt

关于接口,总线,驱动就介绍完了,您有什么想法可以联系小编。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查