本人在delphi下开发一个小的串口通信程序,用的mscomm控件.现在出现了一个奇怪的问题.就是我想发送二进制的数,仅需要发送三位,当我发送111,110,101,011等组合的时候没有问题,可是当我发送001和000这三位的时候,每次都不能接收到数据.本人思考调试了很长时间也无法解决.我的mscomm的Rthreshlod属性设置为1.后来我考虑到这里的1代表一个字节,于是我就不发送3bit的数据,而是发送8bit的数据,这样就是完整的一个字节了,前3bit有效.可是,问题照旧.000和001依然无法接收.真是太奇怪了.程序很简单,我反复检查过了,其它地方没有问题.在线等待高手的指点.如果您足够热心的话,我可以把程序传给你.

解决方案 »

  1.   

    按字符发送,001对应#1,002对应#2,
      

  2.   

    贴出源码来,虽然我不是,但是高手还是很多的
      

  3.   

    谢谢楼上的热心人.可是用字符发送是不行的,因为我现在是一个模拟程序,将来要用来跟设备通信,字符恐怕是不行的.真的是无计可施了,现在
      

  4.   

    一年前我做串口控制的,现在忘得差不多了,我想应该是这个问题吧!
      

  5.   

    可以用$加十六进制来代替十进制表示,这样就是一个字符啊