我用TMS Async32写Modem的COM3口
经测试须设置ControlDtr: dtrEnabled 
ControlDts:rdsEnabled才能通讯
其它速率 位数 校验和超级终端的设置一样的
但是发出AT指令后
收到两个乱码
没有收到'OK'
关闭后重新发时会在发之前收到'OK'
但在超级终端中
回车就能收到
是不是回车有代表特殊字符呢
试过#13 #10均无效有哪位大大可帮我解决???

解决方案 »

  1.   

    加chr(13)<DELPHI里>就可以了PS:TMS Async32是什么?控件?类?另:我想请教一下,你是用的异步通讯还是同步通讯?如果用的异步通讯,你是怎么在发出AT指令后接收执行结果的?
      

  2.   

    TMS Async32 在网上搜一下通讯过程是这样的有一个Boolean的全局变量 CommRX
    当串口收到一个字符后 CommRX 为否则将其置位
    同时启动一个1000MS的定时器
    定时器触发后读Buffer里的资料
    然后将 CommRX 复位我以前都是这样写的发AT指令大概是这样的 B: Array of Byte
    B[0]:=BYTE('A');
    B[1]:=BYTE('T');
    B[2]:=13;
    B[3]:=10;
    Count := Form1.Vacomm1.writer(B,Count);
    ....
    这也在其他串口程序中用过的
    没有问题!
      

  3.   

    我用WriteText摆平了
    问题在这里
    用WriteBuf不行
    区别在哪里还不清楚
      

  4.   

    WriteBuf , 估計寫完, 還要一個發送的字符標記