我进行一项手机短信的开发,用串口,win32 api,异步,线程方式,
第一次运行很正常,
但关闭程序后,再次运行程序,串口就对命令没有响应了,(能打开,但发命令无反应)
只有把设备断一下电,就又好了,这是为什么?

解决方案 »

  1.   

    发表一下自己的见解:(供参考!)
    发送完毕后有没有将Buffer的内容清除,还有通讯端口要执行关闭等动作。
    即通讯端口处理可能存在问题。
      

  2.   

    综合aushqh(crystal)和 Behard(我爱天安门) 的意见,你的串口应该没有问题,只是你的设备在应用程序关闭时需要关闭串口连接并清除缓冲区内容。
      

  3.   

    多谢大家的帮助,我又测试了一下,我用的是wavecom模块,
    我看了一下说明书,好象要用AT+CPOF命令关闭模块内部程序。
    我关闭时停止线程,执行清空buffer,close 串口,
    再开端口,先AT+CPOF再AT+CFUN,就OK了,是不是一定要先发关闭命令关闭模块?
    为什么用超级终端就没有这个问题呢?也不用执行关闭命令