硬件: x86 + Intel82545网卡
软件:
(1)Ubuntu14.04
(2)linux4.2.1源码
(3)Etherlab1.5.2源码
1、 重命名e1000驱动文件
在windows下,将linux4.2.1中的e1000驱动文件重命名,增加后缀“-4.2-ethercat”:
\linux-4.2.1\drivers\net\ethernet\intel\e1000:
2. 移植e1000驱动
绝大部分移植工作都在e1000_main-4.2-ethercat.c文件,其它几个文件只需要更改包含的头文件即可:
原文件:
#include "e1000.h"
更改为:
#include "e1000-4.2-ethercat.h"
e1000_main-4.2-ethercat.c文件是e1000驱动实现的主体,移植时可参考3.4版本相关文件的更改。
3、编译和安装
将移植好的e1000驱动拷贝到linux下igh对应的目录:/ethercat-1.5.2/devices/e1000
(1)执行配置:
#./configure -with-linux-dir=/opt/linux-4.2.1 -disable-8139too -enable-e1000
(2)编译:
#make
#make modules
(3)安装:
#make install
#make modules_install install
etherlab将被默认安装到/opt/etherlab。
(4)将/opt/etherlab/init.d/ethercat拷贝到/etc/init.d/目录下。
(5)将/opt/etherlab/sysconfig/ethercat 拷贝到/etc/sysconfig/目录下。
并将本机的MAC地址填入MASTER0_DEVICE:
MASTER0_DEVICE="00:01:02:03:04:05" //示例
网卡驱动选择e1000:
DEVICE_MODULES="e1000"
(6)建立软连接
ln -s /opt/etherlab/bin/ethercat /usr/local/bin/ethercat
4、测试
启动master:
#/etc/init.d/ethercat start
连接伺服并查看总线状态和pdo配置:
#ethercat sl
#ethercat pdos