精品乱码一区内射人妻无码-亚洲中文AⅤ中文字幕在线-免费不卡国产福利在线观看-国产综合无码一区二区色蜜蜜

          您現(xiàn)在的位置:智能制造網(wǎng)>技術(shù)中心>Visual Basic串口通訊調(diào)試方法

          直播推薦

          更多>

          企業(yè)動(dòng)態(tài)

          更多>

          推薦展會(huì)

          更多>

          Visual Basic串口通訊調(diào)試方法

          2009年12月25日 11:59:03人氣:5128來源:北京通聯(lián)時(shí)代電子技術(shù)有限公司

          Visual Basic串口通訊調(diào)試方法

            現(xiàn)有電子秤一臺(tái),使用串口與計(jì)算機(jī)進(jìn)行通訊。編寫VB程序來訪問串口,達(dá)到讀取電子秤上顯示的數(shù)據(jù)。該電子秤為BE01型儀表,輸出為RS-232C標(biāo)準(zhǔn)接口,波特率為300-9600、偶校驗(yàn)、7個(gè)數(shù)據(jù)位、2個(gè)停止位。所有字符均發(fā)送11位ASCII碼,一個(gè)起始位。在VB中與串口通訊需要引入控件MSComm串口通訊控件(在Microsoft Comm Control 6.0中)。具體程序如下:控件簡(jiǎn)稱:MSC

          Dim Out(12) As Byte '接收var中的值
          Dim var As Variant '接收MSC.input中的數(shù)值
          Dim nRece As Integer '計(jì)算MSC.inputbuffer的個(gè)數(shù)
          Dim i As Integer, j As Integer '隨即變量,計(jì)算循環(huán)

          ****************************************************************************

          Private Sub Form_Load()
           ClearText
           With MSC
            .CommPort = 1 '設(shè)置Com1為通信端口
            .Settings = "9600,E,7,2" '設(shè)置通信端口參數(shù) 9600赫茲、偶校驗(yàn)、7個(gè)數(shù)據(jù)位、1個(gè)停止位.(這里需要進(jìn)一步說明的是:.Setting=”BBBB,P,D,S”。
            含義是:B:Baud Rate(波特率);P:Parity(奇偶);D:Data Bit;S:Stop Bit)

            .InBufferSize = 40 '設(shè)置緩沖區(qū)接收數(shù)據(jù)為40字節(jié)
            .InputLen = 1 '設(shè)置Input一次從接收緩沖讀取字節(jié)數(shù)為1
            .RThreshold = 1 '設(shè)置接收一個(gè)字節(jié)就產(chǎn)生OnComm事件

           End With

          End Sub

          ****************************************************************************

          Private Sub ClearText()
           Text3.Text = ""
           Text2.Text = "5"
           Text1.Text = ""
          End Sub

          Private Sub Command1_Click()
           ClearText
           ' nRece = 0 '計(jì)數(shù)器清零
           With MSC
            .InputMode = comInputModeBinary '設(shè)置數(shù)據(jù)接收模式為二進(jìn)制形式
            .InBufferCount = 0 '清除接收緩沖區(qū)
            If Not .PortOpen Then
             .PortOpen = True '打開通信端口
            End If
           End With
          End Sub

          Private Sub MSC_OnComm()
           DelayTime ‘用來延續(xù)時(shí)間
           ClearText
           With MSC
            Select Case .CommEvent '判斷通信事件
            Case comEvReceive: '收到Rthreshold個(gè)字節(jié)產(chǎn)生的接收事件
             SwichVar 1
             If Out(1) = 2 Then '判斷是否為數(shù)據(jù)的開始標(biāo)志
              .RThreshold = 0 '關(guān)閉OnComm事件接收
             End If
             Do
              DoEvents
             Loop Until .InBufferCount >= 3 '循環(huán)等待接收緩沖區(qū)>=3個(gè)字節(jié)
             ' nRece = nRece + 1
             For i = 2 To 12
              SwichVar i
              Text1.Text = Text1.Text & Chr(Out(i))
             Next
             Text1.Text = LTrim(Text1.Text)
             Text2.Text = Text2.Text & CStr(nRece)
             .RThreshold = 1 '打開MSComm事件接收
            Case Else
             ' .PortOpen = False
            End Select
           End With

          End Sub

          ****************************************************************************

          Private Sub DelayTime()

           Dim bDT As Boolean
           Dim sPrevious As Single, sLast As Single

           bDT = True

           sPrevious = Timer (Timer可以計(jì)算從子夜到現(xiàn)在所經(jīng)過的秒數(shù),在Microsoft Windows中,Timer函數(shù)可以返回一秒的小數(shù)部分)

           Do While bDT
            If Timer - sPrevious >= 0.3 Then bDT = False
           Loop
           bDT = True

          End Sub

          (通信傳輸速率為9600bps,則zui快速度1.04ms發(fā)送一個(gè)字節(jié),儀表每秒發(fā)送50幀數(shù)據(jù),每幀數(shù)據(jù)有4個(gè)字節(jié),即每秒發(fā)送200個(gè)字節(jié),平均5.0ms 發(fā)送一個(gè)字節(jié),連續(xù)讀取串口數(shù)據(jù)時(shí)要在程序中添加循環(huán)等待程序)

          Private Sub SwichVar(ByVal nNum As Integer)

           DelayTime
           var = Null
           var = MSC.Input
           Out(nNum) = var(0)

          End Sub

          (設(shè)置接收數(shù)據(jù)模式采用二進(jìn)制形式,即 InputMode=comInputModeBinary,但用Input屬性讀取數(shù)據(jù)時(shí),不能直接賦值給 Byte 類型變量,只能通過先賦值給一個(gè) Variant 類型變量,返回一個(gè)二進(jìn)制數(shù)據(jù)的數(shù)組,再轉(zhuǎn)換保存到Byte類型數(shù)變量中。)

          Private Sub Text1_Change()

           Text3.Text = CText(Text1.Text) - CText(Text2.Text)

          End Sub

          ****************************************************************************

          Private Function CText(ByVal str As String) As Currency

           If str <> "" Then
            CText = CCur(Val(str))
           Else
            CText = 0
           End If

          End Function
           

          關(guān)鍵詞:計(jì)數(shù)器
          全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

          免責(zé)聲明

          • 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請(qǐng)必須注明智能制造網(wǎng),http://www.tzhjjxc.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
          • 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
          • 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
          • 如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

          <
          更多 >

          工控網(wǎng)機(jī)器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機(jī)械包裝機(jī)械印刷機(jī)械農(nóng)業(yè)機(jī)械食品加工設(shè)備制藥設(shè)備倉(cāng)儲(chǔ)物流環(huán)保設(shè)備造紙機(jī)械工程機(jī)械紡織機(jī)械化工設(shè)備電子加工設(shè)備水泥設(shè)備海洋水利裝備礦冶設(shè)備新能源設(shè)備服裝機(jī)械印染機(jī)械制鞋機(jī)械玻璃機(jī)械陶瓷設(shè)備橡塑設(shè)備船舶設(shè)備電子元器件電氣設(shè)備


          我要投稿
          • 投稿請(qǐng)發(fā)送郵件至:(郵件標(biāo)題請(qǐng)備注“投稿”)1271141964.qq.com
          • 聯(lián)系電話0571-89719789
          工業(yè)4.0時(shí)代智能制造領(lǐng)域“互聯(lián)網(wǎng)+”服務(wù)平臺(tái)
          智能制造網(wǎng)APP

          功能豐富 實(shí)時(shí)交流

          智能制造網(wǎng)小程序

          訂閱獲取更多服務(wù)

          微信公眾號(hào)

          關(guān)注我們

          抖音

          智能制造網(wǎng)

          抖音號(hào):gkzhan

          打開抖音 搜索頁掃一掃

          視頻號(hào)

          智能制造網(wǎng)

          公眾號(hào):智能制造網(wǎng)

          打開微信掃碼關(guān)注視頻號(hào)

          快手

          智能制造網(wǎng)

          快手ID:gkzhan2006

          打開快手 掃一掃關(guān)注
          意見反饋
          關(guān)閉
          企業(yè)未開通此功能
          詳詢客服 : 0571-87858618