GTM900GSM短信控制简单程序
根据给定的信息,本文将详细解释"GTM900GSM短信控制简单程序"的相关知识点。这主要包括华为GTM900模块的基础介绍、AT指令的应用以及如何通过C语言实现短信的发送与接收。 ### 华为GTM900模块简介 华为GTM900是一款用于全球移动通信系统(GSM)网络的通信模块,支持GSM 900/1800MHz频段。该模块具备强大的功能和性能,可以实现语音、数据和短消息服务等功能。它适用于多种应用场景,如远程监控、报警系统、车辆追踪等。 ### AT指令简介 AT指令是一种用于配置和控制调制解调器的标准命令集。在GSM通信中,AT指令被广泛用于配置模块参数、发送短信、拨打电话等操作。GTM900模块也支持通过AT指令进行配置和控制。 ### GSM短信收发简单程序分析 #### 1. 宏定义与变量声明 程序开始部分定义了一些宏和变量: - `#define GSM_7BIT 0`:用于设置GSM编码模式为7位。 - `#define uchar unsigned char`:定义`uchar`类型为无符号字符型。 - `#define uint unsigned int`:定义`uint`类型为无符号整型。 - `#define TRUE 1` 和 `#define FALSE 0`:定义逻辑真和假。 此外,还定义了几个位操作符来控制模块的电源、复位等状态。 #### 2. UART通信函数 程序中定义了两个UART通信相关的函数: - `void Write_UART(char *psrt, uchar nlenght)`:用于向GTM900模块发送字符串。该函数接受一个字符指针`psrt`和长度`nlenght`作为参数,循环发送每个字符直到发送完毕。 - `void ans_UART(char *ans, uchar lenght)`:用于从GTM900模块读取响应。该函数接受一个字符指针`ans`和长度`lenght`作为参数,循环读取每个字符直到读取完毕。 #### 3. 删除短信函数 `void gsmDeleteMessage()`函数用于删除模块中的所有短信。具体步骤是构造一个AT指令字符串`AT+CMGD=1,4`并发送给模块,然后读取模块的响应。 #### 4. 初始化函数 程序中有三个初始化函数,分别用于设置模块的不同参数: - `gsm_init1()`:设置模块的消息通知模式为文本模式,并配置为只接收短信。 - `gsm_init2()`:设置模块的短信格式为PDU模式,这是GSM短信的一种编码方式。 - `gsm_init3()`:设置短信存储位置为SIM卡。 #### 5. 读取短信函数 `void gsmReadMessage()`函数用于读取短信。在这个函数中,首先定义了多个字符串变量用于存储指令和接收的数据,接着通过一系列的AT指令交互来获取短信内容。 ### 总结 本文详细介绍了"GTM900GSM短信控制简单程序"中的核心概念和技术细节。通过上述分析可知,该程序主要实现了GTM900模块的初始化、短信删除以及短信读取等功能。其中涉及到了AT指令的配置、UART通信以及PDU模式的短信处理等内容。对于希望利用GTM900模块开发GSM通信项目的开发者来说,这些知识非常实用且具有参考价值。
#include <STRING.H>
#include <c8051f000.h>
#define GSM_7BIT 0
#define uchar unsigned char
#define uint unsigned int
#define TRUE 1
#define FALSE 0
sbit lock=P2^2;
sbit CONTURE=P2^3;
sbit RST2=P0^6;
sbit GRST=P2^7;
sbit POWERN=P2^5;
void Write_UART(char *psrt,uchar nlenght)
{
for(;nlenght>0;nlenght--)
{
TI=0;
SBUF=*psrt;
psrt++;
while(!TI);
TI=0;
}
}
void ans_UART(char* ans,uchar lenght)
{
char* ptr;
ptr=ans;
for(;lenght>0;lenght--)
{
RI=0;
while(!RI);
*ptr=SBUF;
ptr++;
}
}
剩余22页未读,继续阅读
- weiweikunlunli2014-03-14蛮好用的,简洁
- Chen_Hulk2014-04-28在开发板上修改一下端口就可以运行了
- shutaoin20082013-07-03蛮好用的,简洁
- fwb18992013-09-30有参考价值,简洁明了!
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 自定义参照引用后保存显示主键或显示为空问题处理
- 我国1950-2023年外汇及黄金储备汇总+趋势变化图
- YOLOX,YOLOV5,YOLOV8,YOLOV9 针对 OpenVINO 的 C++ 推理,支持 float32、float16 和 int8 .zip
- 设置NCC单据参照字段多选(参照多选)
- 已安装xcb、X11库的交叉编译器(x86-64-aarch64-linux-gnu)
- 包含约100万条由BELLE项目生成的中文指令数据
- BIP集成NC65预算
- 包含约50万条由BELLE项目生成的中文指令数据
- 完整的交叉编译好支持xcb的qt库(qt5.15.2、arm64、xcb、no-opengl)
- 包含约40万条由BELLE项目生成的个性化角色对话数据,包含角色介绍