Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2341812
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:05:07

1,我用windows 2000 超级终端.,设COM1,波特率:2400;数据位7;无奇偶校验;停止位2;数据流控制:xon/xoff;
  属性中ASCII码设置(全选中):发送:1,换行符做发送行末尾;2,本地回显键入的字符;
                            接受:3,将换行符输入到行末尾;4,传入的数据转成7位ASCII;5,超过终端的宽度自动换行
 
  发送"P"字符后,电脑正常显示终端的数值;

2,我使用c++ builder5.0编程,使用YBcommservice控件;我做如下设置:
                     COM1,波特率:2400;数据位7;无奇偶校验;停止位2;数据流控制:fcxon/fcxoff;

            发送与接受:

void __fastcall TForm1::Timer2Timer(TObject *Sender)
{
 unsigned char Buf[8192]; //收到的字节数不会超过串口缓存的容量, 所以分配一个缓存容量相同的Buf
  int n;
  AnsiString s;
  YbCommDevice1->Command("P\r");
if(YbCommDevice1->Active)
    { n= YbCommDevice1->Read(Buf,8192); //检测收到的字节个数N
      //ShowMessage("not got data");
      if(n>0)

         {  //ShowMessage("Get data");
         for(int i=0; i              s += IntToHex(Buf[i],2) + " ";
              s = s.Trim();


            //if(!s.IsEmpty())
           //   {
                edtPort->Text=s;
            //    }
          }
      }

}

      结果:edtPort->Text没有任何变化
      请各位高手指点!

--------------------next---------------------

阅读(979) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~