就是用SPCOMM控件写个读串口的程序,一般读是正确的,可到机器重启动后会出现读不正确的现象,然后用其他象串口助手这样的串口程序读一下正确后再用我的程序读就不会出现错误了,一直到再次重新启动还会出错,不知道有人遇到过这样的问题么?

解决方案 »

  1.   

    应该不会吧
    你把机器重新启动后,然后进入Delphi用调试环境跟踪一下
      

  2.   

    如果其他机器也这样,可能是你的程序开始对串口初始化的问题,
    注意检查RTSControl、DtrControl的初始设置。
      

  3.   

    正确的设置应该是什么呢?我对这个细节的东西不很懂,
    我的程序中是默认的设置:RTSControl=RtsEnable、DtrControl=DtrEnable
      

  4.   

    串口的初始化设置不对,把所有true的属性都该为false上边那两个也该一下就应该没问题了
      

  5.   

    好象还不行啊,我现在的设置是:
    baudrate=9600
    bytesize=_8
    commname='COM1'
    dsrSensttivity=false
    dtrControl=dtrdisable
    ignorenullchar=false
    inx_xonxoffflow=false
    outx_ctsflow=false
    outx_dsrflow=false
    out_xonooffflow=false
    parity=none
    paritycheck=false
    replacewhenparityerror=false
    rtsControl=rtsdisable
    stopbits=_1
    txcontinueonxoff=false
    好象设置true/false的就这么多了把,上两个设置是这样么?
      

  6.   

    把你的spcommm的有关代码贴上来看看
      

  7.   

    Up一下,
    可以单步跟踪一下嘛。
    ==========================================
    欢迎使用 Forums Helper 论坛助手... [助您多、快、好、爽上CSDN...]
    程序最后更新2004年7月11日          [Powered By ChinaOK]
      

  8.   

    就是用SPCOMM控件写个读串口的程序,一般读是正确的,可到机器重启动后会出现读不正确的现象,然后用其他象串口助手这样的串口程序读一下正确后再用我的程序读就不会出现错误了,一直到再次重新启动还会出错,不知道有人遇到过这样的问题么?在读正确的时候,你用Comm1.stopcomm;Comm1.Startcomm; 试试,可以查出问题所在
      

  9.   

    接在传口线上,
    可以自制,用LED监控COM口得每一条线。很简单。
    你在北京的话可以借你。