MX Component读取32位数据

本文详细介绍了如何使用ACTUTLTYPE.DLL库与三菱PLC进行通信,特别是解决了无法读取32位数据的问题。通过示例代码展示了读取和转换32位数据的步骤,适用于有符号和无符号数据类型,对于进行三菱PLC编程和通信的开发者具有参考价值。
摘要由CSDN通过智能技术生成

1.最近一直在看MX Component和三菱的PLC通信,用的是ACTUTLTYPE.DLL文件,但是用里面的函数无论如何也读不了32位数据,后面找了厂家要了一份样例才知道的,现在想分享给大家看看,我本人测试了没有问题,不论是有符号的32位数据和无符号的32位数据都可以读!现将原代码展示给有需要的人!

 
           int iRet;
            int ISize = 2;
            short[] Ipsdata=new short[ISize]; ;  //定义16位整型数组
            byte[] IpsdataByte=new byte[ISize*2]; //定义Byte型数组
            byte[] IpsdataByteTemp; 
            System.String[] data;       
            iRet = axActUtlType1.ReadDeviceBlock2("R31052", ISize, out Ipsdata[0]);  // 分别读取D10与D11的值存到整形数组内
            data = new System.String[ISize];
            for (int i = 0; i < ISize; i++)
            {
                IpsdataByteTemp = BitConverter.GetBytes(Ipsdata[i]); //提取字节存取到IpsdataByteTemp
                IpsdataByte[i * 2] = IpsdataByteTemp[0];            //拼接字节
                IpsdataByte[i * 2 + 1] = IpsdataByteTemp[1];        //拼接字节
                
            }
            textBox2.Text = BitConverter.ToInt32(IpsdataByte, 0).ToString();  //转为双字整数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值