请教各位大虾:
    我在windows下对串口进行设置时,因为波特率要求在125000bps,但是我用setcommstate函数的时候,在win9x下,返回FALSE错误代码是6(非法句柄);在winxp下,也返回FALSE错误代码是87(不正确参数),请问是什么原因呢?
    我试过如果设置的波特率是115200的事setcommstate返回的是TRUE!好像超过这个值就不行了,什么原因呢?查了一下msdn,最高的时候好像可以使CBR_256000的啊!!怎么回事呢?真诚请教各位!谢谢了!!

解决方案 »

  1.   

    设置成为125000bps以上的....http://www.gjwtech.com/scomm/sc2vc6serialprogexamle.htm
      

  2.   

    CBR_110 
    CBR_19200
    CBR_300 
    CBR_38400
    CBR_600 
    CBR_56000
    CBR_1200
    CBR_57600
    CBR_2400
    CBR_115200
    CBR_4800
    CBR_128000
    CBR_9600
    CBR_256000
    CBR_14400
      

  3.   

    应该是可以的  ,125000bps,这个在传输的波特率中有这个吗?不记得了。
     另外看连接是设备支持不支持这个速度,
    如果都没有问题的话,就检查一下你的程序了。
      

  4.   

    我在几台电脑上都试过的啊!在115200bps时还能正常接受发送数据的!但是只要是115201bps就不行了啊!怎么办呢?我快疯了!
      

  5.   

    我用系统自带的超级终端试过的结果如下:设置115200bps的时候能成功的,但是设置比它高的就是不成功了!怎么办呢?难道pc COM口的极限是115200 bps?
      

  6.   

    对啦,我的超级终端的baudrate下拉可选值是:...115200,230400,460800,921600!!!这都是由可能行的值吗?
      

  7.   

    Sorry,
    只行选择上面列出的几个值,不能是125000!!!
      

  8.   

    在超级终端里是这样的,但是我用超级终端只是为了证明要设置串口的baudrate好像不能超过115200 bps啊!我实际要应用的是125000 bps!!!就是这样。我查了许多资料,也咨询比较有经验的人,好像是pc串口是不能超过115200的!但是,我在这里还是感谢大家的热心的!thank you!