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

📄 comminit.vb

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 VB
字号:
Module CommInit
    ' 串行口初始化
    Public Sub SCIinit(ByRef MSComm1 As AxMSCommLib.AxMSComm, ByVal COMx As Byte, ByVal SCIFormat As String)
        If MSComm1.PortOpen = True Then
            MSComm1.PortOpen = False
        End If
        MSComm1.CommPort = COMx '串行口号
        MSComm1.Settings = SCIFormat '定义传输格式
        MSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeBinary  '二进制数据格式
        MSComm1.RThreshold = 0 '关闭串行中断
        MSComm1.InputLen = 0 '一次读取缓冲区全部数据
        MSComm1.PortOpen = True '打开串行口
        MSComm1.InBufferCount = 0
    End Sub

    '----------------------------
    '函数名:SCISendN
    '功能:发送N个数据
    '参数:data-待发送的数据
    '----------------------------
    Public Sub SCISendN(ByRef MSComm1 As AxMSCommLib.AxMSComm, ByVal data() As Byte)
        MSComm1.OutBufferCount = 0
        MSComm1.Output = data
        MSComm1.OutBufferCount = 0
        MSComm1.InBufferCount = 0

    End Sub
    '----------------------------
    '函数名:SCIRecvN
    '功能:发送N个数据
    '----------------------------
    Public Function SCIRecvN(ByRef MSComm1 As AxMSCommLib.AxMSComm, ByVal Count As Integer, ByVal DelayTime As Integer) As Boolean
        Dim i As Integer
        Dim d1 As Integer
        d1 = Microsoft.VisualBasic.DateAndTime.Timer
        Do
            Application.DoEvents()
            If Microsoft.VisualBasic.DateAndTime.Timer - d1 > DelayTime Then
                's内未接收到1个数据,返回Flase
                Form1.frmMain.StateTxt.Text = "False"
                Return False
            End If
        Loop Until MSComm1.InBufferCount >= Count
        G_RecvData = MSComm1.Input
        MSComm1.InBufferCount = 0
        Return True
    End Function

    '----------------------------------------
    '函数名:GetCheckChar求数据流的异或校验码
    '参数:DataNum数据流的长度,DataP()数据流
    '返回:校验码
    '---------------------------------------
    Public Function GetCheckChar(ByVal DataNum As Integer, ByVal DataP() As Byte) As Byte
        Dim i As Integer, CheckChar As Integer
        CheckChar = 0
        For i = 0 To DataNum - 1
            CheckChar = CheckChar Xor DataP(i)
        Next
        Return (CheckChar)
    End Function
End Module

⌨️ 快捷键说明

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