﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>A1VBCode Forums / Classic Visual Basic (VB 6 or earlier) / General Visual Basic  / Monitoring MSComm1.CommEvent / Latest Posts</title><generator>InstantForum.NET v4.1.1</generator><description>A1VBCode Forums</description><link>http://www.a1vbcode.com/vbforums/</link><webMaster>forums@a1vbcode.com</webMaster><lastBuildDate>Thu, 09 Feb 2012 04:19:15 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Monitoring MSComm1.CommEvent</title><link>http://www.a1vbcode.com/vbforums/Topic29010-3-1.aspx</link><description>After giving this more thought I think this is the best way to go because it tests for both comEvCTS as well as the state of CTSHolding.&lt;/P&gt;&lt;DIV style="BORDER-RIGHT: #000000 3px solid; PADDING-RIGHT: 25px; BORDER-TOP: #000000 3px solid; PADDING-LEFT: 25px; BACKGROUND-IMAGE: none; PADDING-BOTTOM: 25px; BORDER-LEFT: #000000 3px solid; PADDING-TOP: 25px; BORDER-BOTTOM: #000000 3px solid; BACKGROUND-COLOR: #cccccc"&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Form_Load()&lt;BR&gt;   MSComm1.PortOpen = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Option&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Explicit&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Form_Load()&lt;BR&gt;   MSComm1.PortOpen = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Command1_Click()&lt;BR&gt;   MSComm1.RTSEnable = &lt;FONT color=#0000cc&gt;Not&lt;/FONT&gt; MSComm1.RTSEnable = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; MSComm1_OnComm()&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CommEvent = comEvCTS &lt;FONT color=#0000cc&gt;And&lt;/FONT&gt; MSComm1.CTSHolding = True &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;is&lt;/FONT&gt; High"&lt;BR&gt;   &lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt;&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CommEvent = comEvCTS &lt;FONT color=#0000cc&gt;And&lt;/FONT&gt; MSComm1.CTSHolding = False &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;is&lt;/FONT&gt; Low"&lt;BR&gt;   &lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;/DIV&gt;</description><pubDate>Sun, 21 Mar 2010 01:13:56 GMT</pubDate><dc:creator>CDRIVE</dc:creator></item><item><title>RE: Monitoring MSComm1.CommEvent</title><link>http://www.a1vbcode.com/vbforums/Topic29010-3-1.aspx</link><description>This code toggles the RTS line which is jumped to the CTS line. It's garanteed to work.&lt;P&gt;By the way comEvCTS only returns a change in the CTS line. It can't tell you if it's high or low, which is why I didn't use it in the top example. &lt;/P&gt;&lt;DIV style="BORDER-RIGHT: #000000 3px solid; PADDING-RIGHT: 25px; BORDER-TOP: #000000 3px solid; PADDING-LEFT: 25px; BACKGROUND-IMAGE: none; PADDING-BOTTOM: 25px; BORDER-LEFT: #000000 3px solid; PADDING-TOP: 25px; BORDER-BOTTOM: #000000 3px solid; BACKGROUND-COLOR: #cccccc"&gt;&lt;FONT color=#0000cc&gt;Option&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Explicit&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Form_Load()&lt;BR&gt;   MSComm1.PortOpen = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Command1_Click()&lt;BR&gt;   MSComm1.RTSEnable = &lt;FONT color=#0000cc&gt;Not&lt;/FONT&gt; MSComm1.RTSEnable = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; MSComm1_OnComm()&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CTSHolding = True &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Is&lt;/FONT&gt; High"&lt;BR&gt;   &lt;FONT color=#0000cc&gt;Else&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Is&lt;/FONT&gt; Low"&lt;BR&gt;   &lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;/DIV&gt;&lt;P&gt;If you want to use comEvCTS you can write it this way but it's not as reliable or clean as my first example. &lt;/P&gt;&lt;DIV style="BORDER-RIGHT: #000000 3px solid; PADDING-RIGHT: 25px; BORDER-TOP: #000000 3px solid; PADDING-LEFT: 25px; BACKGROUND-IMAGE: none; PADDING-BOTTOM: 25px; BORDER-LEFT: #000000 3px solid; PADDING-TOP: 25px; BORDER-BOTTOM: #000000 3px solid; BACKGROUND-COLOR: #cccccc"&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Form_Load()&lt;BR&gt;   MSComm1.PortOpen = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; Command1_Click()&lt;BR&gt;   MSComm1.RTSEnable = &lt;FONT color=#0000cc&gt;Not&lt;/FONT&gt; MSComm1.RTSEnable = True&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;Private&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt; MSComm1_OnComm()&lt;BR&gt;   &lt;FONT color=#0000cc&gt;Static&lt;/FONT&gt; intEvCtr &lt;FONT color=#0000cc&gt;As&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Integer&lt;/FONT&gt;&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CommEvent = comEvCTS &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt; intEvCtr = intEvCtr + 1&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CommEvent = comEvCTS &lt;FONT color=#0000cc&gt;And&lt;/FONT&gt; intEvCtr = 1 &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; Went High"&lt;BR&gt;   &lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt;&lt;BR&gt;   &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt; MSComm1.CommEvent = comEvCTS &lt;FONT color=#0000cc&gt;And&lt;/FONT&gt; intEvCtr = 2 &lt;FONT color=#0000cc&gt;Then&lt;/FONT&gt;&lt;BR&gt;      Me.Caption = "CTS &lt;FONT color=#0000cc&gt;Line&lt;/FONT&gt; Went Low"&lt;BR&gt;      intEvCtr = 0&lt;BR&gt;   &lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;If&lt;/FONT&gt;&lt;BR&gt;&lt;FONT color=#0000cc&gt;End&lt;/FONT&gt; &lt;FONT color=#0000cc&gt;Sub&lt;/FONT&gt;&lt;BR&gt;&lt;/DIV&gt;</description><pubDate>Sun, 21 Mar 2010 01:09:02 GMT</pubDate><dc:creator>CDRIVE</dc:creator></item><item><title>Monitoring MSComm1.CommEvent</title><link>http://www.a1vbcode.com/vbforums/Topic29010-3-1.aspx</link><description>Hello,&lt;br&gt;I'm using MSComm.CommEvent to monitor event of my COM port.&lt;br&gt;First I open port1 and get value 105&lt;br&gt;then I short circuit pin 7 (RTS) and 8 (CTS) and then It returns event value "3"&lt;br&gt;But when I release (disconnect) pin 7 and 8, it still remains value "3"&lt;br&gt;Why I does not return back to the original value "105"&lt;br&gt;Does anyone know the code,&lt;br&gt;help me pls &lt;br&gt;&lt;br&gt;************&lt;br&gt;Private Sub Form_Load()&lt;br&gt;    MSComm1.CommPort = 1&lt;br&gt;     MSComm1.RTSEnable = True&lt;br&gt;     MSComm1.PortOpen = True&lt;br&gt;End Sub&lt;br&gt;Private Sub Form_Unload(Cancel As Integer)&lt;br&gt;     MSComm1.PortOpen = False&lt;br&gt;     MSComm1.RTSEnable = False&lt;br&gt;End Sub&lt;br&gt;Private Sub MSComm1_OnComm()&lt;br&gt;       Debug.Print MSComm1.CommEvent&lt;br&gt;      Text1.Text = MSComm1.CommEvent  &lt;br&gt;End Sub&lt;br&gt;************</description><pubDate>Sat, 20 Mar 2010 00:47:46 GMT</pubDate><dc:creator>duchoang</dc:creator></item></channel></rss>
