找回密码
 注册
搜索
查看: 1619|回复: 20

[讨论] 关于AT指令的编程,请高手帮忙

[复制链接]
发表于 2007-1-30 09:32:44 | 显示全部楼层 |阅读模式
我在超级终端上能读到IMEI,可在编程中读不到
,请高手指点一下。
我写的程序如下:
RS232Error =OpenComConfig (com_port_imei,, devicename, 57600, 0, 8, 1, 512, 512 );   
Fmt(write_buffer_imei,"%s<%s","AT+EGMR=0,7\r");
RS232Error_imei =ComWrt (com_port_imei, write_buffer_imei,strl(write_buffer_imei));  
Delay(0.5);
   
RS232Error_imei = ComRd (com_port_imei, read_buffer_imei, 30);
FlushInQ (com_port_imei);   
看到 read_buffer_imei总为空呢

期待中。。。。。。。。。。。。。
 楼主| 发表于 2007-1-30 09:32:44 | 显示全部楼层 |阅读模式
我在超级终端上能读到IMEI,可在编程中读不到
,请高手指点一下。
我写的程序如下:
RS232Error =OpenComConfig (com_port_imei,, devicename, 57600, 0, 8, 1, 512, 512 );   
Fmt(write_buffer_imei,"%s<%s","AT+EGMR=0,7\r");
RS232Error_imei =ComWrt (com_port_imei, write_buffer_imei,strl(write_buffer_imei));  
Delay(0.5);
   
RS232Error_imei = ComRd (com_port_imei, read_buffer_imei, 30);
FlushInQ (com_port_imei);   
看到 read_buffer_imei总为空呢

期待中。。。。。。。。。。。。。
发表于 2007-1-30 11:54:35 | 显示全部楼层
你设的延时太短了吧,只有0.5MS吗,改为500或者1000看看
点评回复

使用道具 举报

 楼主| 发表于 2007-1-30 12:55:01 | 显示全部楼层
Delay(0.5);
是0.5S
点评回复

使用道具 举报

发表于 2007-1-30 17:50:06 | 显示全部楼层
读缓冲区的字节长度加足够大试试?
点评回复

使用道具 举报

发表于 2007-1-31 10:02:02 | 显示全部楼层
检查过你write_buffer_imei里面的东西没有?
  实际ascii里面的回车包括linefeed and carriage return,也就是回车,换行, 对应ascii表为0x15,0x12[br]<p align=right><font color=red>+1 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-1-31 11:40:55 | 显示全部楼层
5楼的兄弟能否说的详细些[em13]
点评回复

使用道具 举报

发表于 2007-1-31 16:47:31 | 显示全部楼层
cylbailey 的意思是,要你用单步调试在RS232Error_imei =ComWrt (com_port_imei, write_buffer_imei,strl(write_buffer_imei));  设一个断点,看write_buffer_imei里面有没有AT+EGMR=0,7\r字符!


[br]<p align=right><font color=red>+1 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-1-31 17:17:20 | 显示全部楼层
有的
[em13]
点评回复

使用道具 举报

发表于 2007-1-30 11:54:35 | 显示全部楼层
你设的延时太短了吧,只有0.5MS吗,改为500或者1000看看
点评回复

使用道具 举报

 楼主| 发表于 2007-1-30 12:55:01 | 显示全部楼层
Delay(0.5);
是0.5S
点评回复

使用道具 举报

发表于 2007-1-30 17:50:06 | 显示全部楼层
读缓冲区的字节长度加足够大试试?
点评回复

使用道具 举报

发表于 2007-1-31 10:02:02 | 显示全部楼层
检查过你write_buffer_imei里面的东西没有?
  实际ascii里面的回车包括linefeed and carriage return,也就是回车,换行, 对应ascii表为0x15,0x12[br]<p align=right><font color=red>+1 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-1-31 11:40:55 | 显示全部楼层
5楼的兄弟能否说的详细些[em13]
点评回复

使用道具 举报

发表于 2007-1-31 16:47:31 | 显示全部楼层
cylbailey 的意思是,要你用单步调试在RS232Error_imei =ComWrt (com_port_imei, write_buffer_imei,strl(write_buffer_imei));  设一个断点,看write_buffer_imei里面有没有AT+EGMR=0,7\r字符!


[br]<p align=right><font color=red>+1 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-1-31 17:17:20 | 显示全部楼层
有的
[em13]
点评回复

使用道具 举报

发表于 2007-4-4 18:46:11 | 显示全部楼层
可能是串口没有接收到信息呢。你看看发送的信息BB有没有收到,我就遇到串口IO重叠问题,能收不能发,你都没有发送出去,所以就接不到了
点评回复

使用道具 举报

发表于 2007-4-5 10:33:55 | 显示全部楼层
可能是波特率错了,换其它的波特率看看,比如115200。
点评回复

使用道具 举报

发表于 2007-4-23 16:48:24 | 显示全部楼层
须提前对串口进行清空,还要检查一下你所设置的变量类型有无错误.
点评回复

使用道具 举报

发表于 2007-10-15 18:39:58 | 显示全部楼层
[em07]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-15 10:08 , Processed in 0.052247 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表