简单的网站后台管理系统,昆明网站排名优化公司,seo优化搜索结果,做网站建设需要什么工具目录
一、准备工作
1. Visual Studio 2022
2. Npcap 1.79
3. SOEM源码
二、源码部署
1. 新建Visual Studio工程
2. 创建文件夹
3. 创建主函数
4. 复制源代码
5. 删除无关项
6. 将soem源码添加进工程
7. 添加soem头文件
8. 配置头文件路径
9. 配置静态库和静态库路…目录
一、准备工作
1. Visual Studio 2022
2. Npcap 1.79
3. SOEM源码
二、源码部署
1. 新建Visual Studio工程
2. 创建文件夹
3. 创建主函数
4. 复制源代码
5. 删除无关项
6. 将soem源码添加进工程
7. 添加soem头文件
8. 配置头文件路径
9. 配置静态库和静态库路径
10. 定义宏
三、运行测试
1. 网卡测试
2. 问题及解决办法
3. 运行结果
4. 连接从站测试 一、准备工作
1. Visual Studio 2022 下载地址略 安装步骤略
2. Npcap 1.79 下载地址Npcap: Windows Packet Capture Library Driver 安装步骤三个全选 3. SOEM源码 下载地址GitHub - OpenEtherCATsociety/SOEM: Simple Open Source EtherCAT Master 二、源码部署
1. 新建Visual Studio工程 2. 创建文件夹 在第1步⑤位置设置的路径下创建inc、src、soem三个文件夹。 3. 创建主函数 在第2步创建的src文件夹下创建主函数main.c 4. 复制源代码 复制SOEM源代码中的osal、oshw、soem三个文件夹到步骤2创建的soem文件夹下 5. 删除无关项 ① 进入步骤2创建的soem文件夹下 ② 进入osal文件夹保留win32文件夹和osal.h文件其余删除 在osal文件夹中创建src、inc文件夹将win32文件夹中的c源代码复制到src文件夹将win32文件夹中的头文件复制到inc文件夹将osal.h文件复制到inc文件夹删掉其余文件只保留inc、src文件夹。 ③ 进入oshw文件夹保留win32文件夹其余删除
在oshw文件夹中创建src、inc文件夹将win32文件夹中的c源代码复制到src文件夹将win32文件夹中的头文件复制到inc文件夹将win32文件夹中的wpcap文件夹复制到oshw文件夹下删掉其余文件只保留inc、src文件夹、wpcap文件夹。 ④ 进入soem文件夹
在soem文件夹中创建src、inc文件夹将soem文件夹中的c源代码复制到src文件夹将soem文件夹中的头文件复制到inc文件夹删掉其余文件只保留inc、src文件夹。 6. 将soem源码添加进工程 重复步骤①、②、③ 重复步骤①、②、③ 7. 添加soem头文件 8. 配置头文件路径 重复⑤、⑥ 重复⑤、⑥ 重复⑤、⑥ 重复⑤、⑥ 9. 配置静态库路径和静态库 同第8步的①、②打开属性 添加静态库Packet.lib、wpcap.lib、winmm.lib、ws2_32.lib 10. 定义宏 同第8步的①、②打开属性 添加宏_CRT_SECURE_NO_WARNINGS、WIN32 三、运行测试
1. 网卡测试
打开SOEM源文件夹路径SOEM-master\test\win32\slaveinfo打开slaveinfo.c复制所有程序到主函数main.c中运行代码 2. 问题及解决办法 ① 指针未初始化 解决办法双击上图红色行跳转到oshw.c文件第42行对prev_adapter指针初始化。 ② 无法解析外部符号“x86”与“x64”冲突 解决办法参考源码部署的“9. 配置静态库和静态库路径”重新配置静态库路径为\soem\oshw\wpcap\Lib\x64原始的静态库路径为\soem\oshw\wpcap\Lib 3. 运行结果 4. 连接从站测试
找到自己的网卡名称第3步的“运行结果”可以查看自己的网卡名称为\Device\NPF_{xxx}复制网卡名称修改主函数代码 (注网卡名称中“\”要用“\\”表示)运行测试
char ifbuf[1024] \\Device\\NPF_(xxxxxxxxxxx);int main(int argc, char* argv[])
{ec_adaptert* adapter NULL;printf(S0EM (Simple Open EtherCAT Master)\nSlaveinfo\n);/* start slaveinfo */slaveinfo(ifbuf);printf(End program\n);return 0;
}