基于MSComm控件的GSM模块程序
最近要写一个关于GSM模块的发送短信的程序,在网上找了半天的代码和资料都不太懂。有些需要什么dll文件的呀,有些需要专门数据结构的呀。 其中众所周知MSComm控件是操作串口的很好工具。 经过不少挫折,最终还是自己写了个非常简单的程序,代码很简单,非常容易理解,只有300行左右哦。下面我就仔细讲解一下。
详细的工程可以在这里下载http://download.csdn.net/detail/jin123wang/3659302
第一:程序的界面
第二:各个按钮对应的函数
首先需要打开串口并初始化,对应的按钮时“打开串口”
其中有个函数是write_port(),就是从串口的接受缓冲区读取数据,为什么不用对应的事件响应函数呢?因为那样不能及时得到GSM返回的信息。其中sleep(1000)这个函数不能少,因为读取之前,GSM发送数据到串口需要一段时间。这个函数源代码是:
其次的功能有发送短信,对应的按钮时“发送”
其次需要读短信,“读取”是指根据具体的索引位置进行读取指定的短信,“全部读取”是读取全部的消息
“读取”按钮的函数是
“全部读取”按钮的函数是
“删除”消息的按钮函数是
最后“清空”按钮应该是很简单的,将对应的字符串设置为空就好了。整个程序应该还是比较简洁的,但缺点是通过TEXT格式发送发送的,而不是PDU,所以不能发送中文,但是大概的框架就是这样,不清楚的可以根据这个程序改进一下的。