我怎么没看出来是循环6次?
Dim t As Single
t = Timer
While Timer < t + 0.2
DoEvents
Wend
这里死循环啊
cpu不100%就怪了
MSComm1.CommPort = 1
MSComm1.PortOpen = True
MSComm1.Settings = "4800,n,8,2"
MSComm1.InputMode = comInputModeBinary
把这些移到form_load()里面去再测试一下。
循环那里没问题,确实可以跳出来。但是不清楚你既然用了Timer控件,为什么要这个延时循环?这不是互相冲突吗?
好像timer的时间单位是微妙