首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

comevdsr有关问题

2012-01-29 
comevdsr问题我写了个程序,利用comEvDSR从1到0产生的事件,让灯亮起来,但无法从mscomm1中找到哪个脚是0到1

comevdsr问题
我写了个程序,利用comEvDSR从1到0产生的事件,让灯亮起来,但无法从mscomm1中找到哪个脚是0到1的事件,请教了!

Private Sub Form_Load()
  MSComm1.CommPort = 1
   
  If MSComm1.PortOpen = False Then
  MSComm1.PortOpen = True
  End If
  Alarm1.FillColor = QBColor(10)
   
 
   
End Sub
  
Private Sub MSComm1_OnComm()
  Select Case MSComm1.CommEvent
  Case comEvDSR
  Alarm1.FillColor = QBColor(12)
   
  End Select
   
End Sub

[解决办法]
MSDN解释如下:
OnComm 事件示例
下例说明如何处理通讯错误和事件。可以在相关的 Case 语句之后插入代码来处理特定的错误或事件。

Private Sub MSComm_OnComm ()
Select Case MSComm1.CommEvent
' Handle each event or error by placing 
' code below each case statement

' 错误
Case comEventBreak ' 收到 Break。
Case comEventCDTO ' CD (RLSD) 超时。
Case comEventCTSTO ' CTS Timeout。
Case comEventDSRTO ' DSR Timeout。
Case comEventFrame ' Framing Error
Case comEventOverrun '数据丢失。
Case comEventRxOver'接收缓冲区溢出。
Case comEventRxParity' Parity 错误。
Case comEventTxFull '传输缓冲区已满。
Case comEventDCB '获取 DCB] 时意外错误

' 事件
Case comEvCD ' CD 线状态变化。
Case comEvCTS ' CTS 线状态变化。
Case comEvDSR ' DSR 线状态变化。
Case comEvRing ' Ring Indicator 变化。
Case comEvReceive ' 收到 RThreshold # of
chars.
Case comEvSend ' 传输缓冲区有 Sthreshold 个字符 '
'
Case comEvEof ' 输入数据流中发现 EOF 字符

End Select
End Sub

那么,我们可以这样做:
设置初始低电平,设置一个变量 BL=True
当DSR从0到1时,BL=False 灯亮
当DSR从1到0时,comEvDSR 事件也会触发,if BL=False then BL=True 灯灭


热点排行