C语言读取PLC数据

lcj1980810 2016-06-13 03:30:17
有一个三菱开发的和PLC通讯的的DLL,里面有一个函数,
lRet = object.ReadDeviceBlock2
(szDevice、lSize、*lpsData)
Long lRet 返回值 输出
CString szDevice 软元件名称 输入
Long lSize 读取点数 输入
Short *lpsData 读取软元件值 输出


这个函数的功能是批量读取PLC积存器地址的值 比如:
lRet = object.ReadDeviceBlock2("d500",5,date)意思就是读取从D500-D504的值到变量date里面 ,我的问题来了,由于我对 C语言的指针不熟悉,那请问如何对date定义和赋值,并从中取出D500-D504的值,请给出详细代码,谢谢!
...全文
694 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lcj1980810 2016-06-13
  • 打赏
  • 举报
回复
为什么只读到第一个的值呢,D500的,其他读出来的都是错误的
赵4老师 2016-06-13
  • 打赏
  • 举报
回复
Short data[5];
int i;
lRet = object.ReadDeviceBlock2("d500",5,&data[0]);
for (i=0;i<5;i++) printf("%04hx ",data[i]);

69,372

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧