⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 write_s7_300_dint.bas

📁 可以读些S7-300PLC中的变量数据
💻 BAS
字号:
Attribute VB_Name = "Module2"
Public Function Write_s7_300_DINT(INPUT_DINT As Long) As Byte()
'------------------十进制转二进制------------------------------------------------
Dim HighBit As Long '转换成二进制的最高位数
Dim AndResult As Long  '相与后的结果

Dim Return_Array(10) As Byte

Dim BinaryString As String
Dim DecimalConvertBinary As String

BinaryString = ""
HighBit = 1073741824
            While (HighBit > 0.5) '
                AndResult = HighBit And INPUT_DINT
                If (AndResult <> 0) Then
                    BinaryString = BinaryString + "1"
                    Else
                    BinaryString = BinaryString + "0"
                End If
                HighBit = HighBit / 2 '每次右移一位
            Wend
        DecimalConvertBinary = BinaryString '存储的是二进制数的字符串
'******************************************************************************************
Binary_String = Trim(DecimalConvertBinary)

BinaryStrLength = Len(Binary_String)

Third_EightBit = Right(Binary_String, 8) '第三个八位

Temp1 = Right(Binary_String, 16)

Second_EightBit = Left(Temp1, 8) '第二个八位

Temp2 = Right(Binary_String, 24)

First_EightBit = Left(Temp2, 8) '第一个八位

HighEightBit_Length = BinaryStrLength - 24

Zero_EightBit = Left(Binary_String, HighEightBit_Length) '第零个八位
'--------------------------------------------------------------------------------------
Return_Array(0) = BinaryConvertDecimal(Zero_EightBit)

Return_Array(1) = BinaryConvertDecimal(First_EightBit)

Return_Array(2) = BinaryConvertDecimal(Second_EightBit)

Return_Array(3) = BinaryConvertDecimal(Third_EightBit)

Write_s7_300_DINT = Return_Array
End Function

Public Function BinaryConvertDecimal(ByVal varString As String) As Long
          Dim Slen     As Long
          Dim i     As Long
          Dim returnNum     As Long
          Slen = Len(varString)
          For i = 0 To Slen - 1
                  returnNum = returnNum + Val(Mid(varString, i + 1, 1)) * (2 ^ (Slen - i - 1))
          Next
          BinaryConvertDecimal = returnNum
  End Function

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -