找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1180|回复: 8

短信息读取和发送提高速度和稳定性方法?

[复制链接]
发表于 2007-2-5 21:06:09 | 显示全部楼层 |阅读模式
我买了个短信猫.用lab做了个读短信息的程序.能完成读和发送功能.可就是速度慢稳定性不好.
原理:发送at命令等待串口数据返回,当返回的字符串中有OK证明一条返回命令结束
发送:at+cmgr=1\r(读第一条短信息)
返回数据:\r\n+CMGR:\s"REC\sUNREAD","+8613946975187",,"06/12/04,19:24:25+00"\r228d4cyc0123456789\r\n\r\nOK\r\n
由于返回数据的字符串长所以我就用等待的方法解决.我的等待时间是1500ms然后进行处理,把手机号码,发送时间,内容提取出来,再通过数据库把短信内容放入这个号码的表里,在下一步就是删除短信息.由于计算机串口读完一次就自动清空,所以等待必须要足够长的时间,我想这样太浪费时间,所以问等不能不等待不停的读串口把每次读到的数据组合在一起直到有\r\n\r\nOK\r\n返回再进行数据处理?(或其他方法 事件什么的)
还有个问问题就是上面的过程是读信息 收信息 处理信息 删除短信息
我想在读完信息后让把处理信息和删除短信息同时进行处理用队列,这样可以实现吗?
发表于 2007-2-6 00:14:46 | 显示全部楼层
可以的,后面您需要搜索!把读到的concatenate string就可以!好运!
回复 顶

使用道具 举报

 楼主| 发表于 2007-2-6 00:37:15 | 显示全部楼层

试试!

还有就是我在用串口时一直没用VISA Close,我怕在读短信息时丢失数据!我这么考虑是不是多余了!我现在没VISA CLOSE也能运行,不出错误!请问我有必要加上VISA CLOSE 吗?在论坛上WDYJZ说用MsComm比用lab自带的好?你看我这个用哪个比叫更稳定更快?

[ 本帖最后由 gxl 于 2007-2-6 00:40 编辑 ]
回复 顶

使用道具 举报

发表于 2007-2-6 09:06:22 | 显示全部楼层

回复 #1 gxl 的帖子

我不是很了解你这个项目,不过发现你好象有两点做错了:
1:等待1500ms然后读取信息,这个做法应该不能应用的,因为数据发送方应该是随机无规律发送的,你可以尝试使用bytes at visa ports这个vi,不过我现在还是不了解它是以什么方式进行count的,等下去看看;
2:visa close应该是要的,一个io设备打开,操作,关闭应该是一个整体,如果暂时在你的实验中没出现问题,也只是说明是暂时的(莫非labview接管了设备分配和回收?不理解,但保险起见还是要的!!)
回复 顶

使用道具 举报

 楼主| 发表于 2007-2-6 19:09:57 | 显示全部楼层
短信读取和发送是按命令进行的,是有规律的,网上有很多关于AT命令的说明.
我把VISA CLOSE用上看看 ,现在的实验运行了好几天没出现什么问题,我再加上看看.
我感觉加不加VISA CLOSE 没什么关系不同的就是在运行时别的程序不能在用这个被LAB占用的串口.除非完全退出LAB才释放资源的我是怎么理解的.
回复 顶

使用道具 举报

发表于 2007-2-6 19:20:55 | 显示全部楼层
如果您把它CLOSED掉以后,不关闭LV也可以让其他程序使用串口的,所以一般程序停止的时候最好释放掉会比较好,以方便其他程序使用!
回复 顶

使用道具 举报

 楼主| 发表于 2007-2-6 19:46:50 | 显示全部楼层
呵呵!我这个系统要不停的读取短信息和发送,所以不能让其他程序调用这个串口,我是想问要是不加VISA CLOSE会不会增加程序的不稳定性,毕竟我的系统要24小时在现场运行.

[ 本帖最后由 gxl 于 2007-2-6 20:41 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 顶

使用道具 举报

 楼主| 发表于 2007-2-6 20:56:11 | 显示全部楼层
这回才发祥有警告信息
1073876294 the number of bytes transferred is equal to the input  count
什么意思?
回复 顶

使用道具 举报

发表于 2007-2-7 09:11:45 | 显示全部楼层
它意思是说收到的字节数等于您设定的相等,其实这个应该不能算错了,呵呵!刚好相等,因为您知道它的长度!
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-30 07:02 , Processed in 0.055272 second(s), 11 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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