Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

是否支持Visual Studio 编译生成dll 或则lib文件?如果可以用怎么操作 #27

Open
caistd opened this issue Dec 16, 2017 · 18 comments

Comments

@caistd
Copy link

caistd commented Dec 16, 2017

No description provided.

@caistd caistd changed the title 是否支持Visual Studio 编译生成dll 或则lib文件 是否支持Visual Studio 编译生成dll 或则lib文件?如果可以用怎么操作 Dec 16, 2017
@armink
Copy link
Owner

armink commented Dec 16, 2017

想在 windows 平台上用 FreeModbus ?

@caistd
Copy link
Author

caistd commented Dec 16, 2017

是的,想移植mdobus tcp modbus acii modbus rtu

@armink
Copy link
Owner

armink commented Dec 16, 2017

那只需要修改 port 下的文件就好了,记得之前有网友完成了 windows 的移植,难度应该还好。

@caistd
Copy link
Author

caistd commented Dec 16, 2017

是不是只要将freemobus文件夹下面的所有文件,在VS新建一个项目,导入进去,然后修改port文件夹函数是这个意思吧

@armink
Copy link
Owner

armink commented Dec 17, 2017

差不多了,你可以借鉴下里面的其他 ide 里的编译参数

@caistd
Copy link
Author

caistd commented Dec 18, 2017

modbus_rtu master开发的时候新增了带_m的代码其它的代码有改动吗?

@armink
Copy link
Owner

armink commented Dec 19, 2017

好像有很小的改动,你可以用比较工具对比下

@caistd
Copy link
Author

caistd commented Dec 30, 2017

eMBErrorCode
eMBRegisterCB( UCHAR ucFunctionCode, pxMBFunctionHandler pxHandler )这个函数我没有看到里面有引用具体是做什么用的,怎么使用?能不能举个例子 谢谢

@armink
Copy link
Owner

armink commented Dec 30, 2017

这个不是用户应用使用的 api

@caistd
Copy link
Author

caistd commented Dec 30, 2017

我看了下函数好像是自己定义功能码发送的,但是第二个参数我不知道是什么意思能不能跟我说下 谢谢

@armink
Copy link
Owner

armink commented Dec 31, 2017

不是的。正如其名,它是寄存器操作的回调函数。

比如:默认的寄存器存储的数据结构是顺序存储的数组,那么操作寄存器就是操作数组,如何操作就需要在这个函数中实现。

如果你不想要这类定长且有很大限制数据结构,也可以使用链表来存储寄存器,此时就需要用户自己实现这个回调函数。也可以借鉴 EDM (https://github.com/armink/EasyDataManager) 这个项目,它起初就是专门为 FreeModbus 定制的链表存储、事件驱动的库。

@armink
Copy link
Owner

armink commented Dec 31, 2017

许久没折腾 FreeModbus ,上面我说的含义对应的回调,跟你说的回调没有关系,请忽略。

eMBRegisterCB 是注册回调函数,跟你理解的意思一样。第二个入参
pxHandler 是这个新增功能码对应的实现函数。你实现好意思,把它放入到第二个入参即可。这里还有个分析介绍: http://blog.sina.com.cn/s/blog_817e99610102uzjy.html

@caistd
Copy link
Author

caistd commented Jan 1, 2018

感谢 你的主机功能好像没有看到读取保持寄存器的功能,比如功能码03

@armink
Copy link
Owner

armink commented Jan 1, 2018

都有的

@caistd
Copy link
Author

caistd commented Jan 20, 2018

感谢 有打算做TCP主机吗

@armink
Copy link
Owner

armink commented Jan 21, 2018

目前没有的

@caistd
Copy link
Author

caistd commented Jan 24, 2018

已经在windows 平台完成 tcp 主机移植

@armink
Copy link
Owner

armink commented Jan 25, 2018

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants