关于BCB里用AT指令发短信息的问题
刚开始接触哈,什么都不懂。
MSComm1->CommPort=1;//选择串口号
MSComm1->Settings="9600,N,8,1"; //设置串口的属性波特率、奇偶校验、数据位和、//停止位。
MSComm1->InputMode=0;//设置传入数据的格式,0表示文本形式
MSComm1->PortOpen=true;//打开串口
String lz = "AT\r"; //检测连接是否正常
MSComm1-> Output = lz;
Sleep(1000);
String re0 = MSComm1->Input;
lz = "AT+CMGF=1\r";
MSComm1-> Output = lz;
Sleep(1000);
String re1 = MSComm1->Input;
lz = "AT+CMGS=1356036XXXX\r";
MSComm1-> Output = lz;
Sleep(1000);
String re2 = MSComm1->Input;
// lz = "ceshi";
// MSComm1-> Output = lz;//这里该怎么写?
Sleep(3000);
String re3 = MSComm1->Input;
以上是我写的发送"ceshi"的代码,不知道最后的一段怎么写了。还有就是有时候运行时re0,re1,re2返回的怎么也带着发送出去的如AT什么的?这是怎么回事?还有就是发送完毕后如果要接着继续发送该怎么处理?
求各位高手帮忙!
[解决办法]
另外,用指令"ATE0”可关闭设备回显,这样返回的字符串就只是OK或ERROR之类的。
[解决办法]
sorry,刚才说错鸟,是0x1A,换成十进制就是26.
String strEnd = char(0x1A);
加到末尾就行了。
[解决办法]
删除什么呢?直接把要发的信息继续发就行了。