⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gprs.h

📁 湖北水文黄石试点集中器代码
💻 H
字号:
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright (C), 2005, TopBond Tech. Co., Ltd.
* File name:       GPRS.H
* Module name:     GPRS自动拨号上网模块
* Author/Date:     WuHuan  06/02/14 
* Version:         Ver 1.0
* Description:     GPRS自动拨号上网系列函数的头文件
* Others:          如有改动,请在下面的历史记录登记,谢谢合作!

------------------History-----------------------------
* Modifier/Date:    //修订人及修订日期
* Modify Reason:    //修订原因
* Modification:     //修订的内容和位置的简要说明
------------------------------------------------------
* Modifier/Date:    //修订人及修订日期
* Modify Reason:    //修订原因
* Modification:     //修订的内容和位置的简要说明
------------------------------------------------------
 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#if !defined( _GPRS_H )
#define _GPRS_H

enum PPPGPRSState { POWERON=0, PPPINIT, ATE0, ATCGATT, ATCGATT_1,
		    ATCGDCONT, ATD99, PPPLINK, PPPLINKUP, PPPTERM };

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPP_Running( );
**  
**  功能描述 :实现GPRS自动拨号上网,不断调用该函数,可保证GPRS一直在线;
**  
**  参    数 :无;
**    
**  返 回 值 :返回进行GPRS拨号上网状态;
**    
**      0    : GPRS模块上电操作; 
**      1    : 初始化PPP网络相关参数;
**      2    : 发送“ATE0”指令操作;
**      3    : 发送“AT+CGATT?”指令,用于检查模块是否附着到GPRS网络;
**      4    : 发送“AT+CGATT=1”指令,用于设置模块附着到GPRS网络;
**      5    : 发送“AT+CGDCONT=1,"IP","CMNET "”,设置GPRS通讯参数;
**      6    : 发送“ATD*99***1#”,拨号到GPRS节点服务器;
**      7    : 进行PPP配置、协商;
**      8    : 表明GPRS上网、PPP配置成功,应用程序可进行TCP/IP通讯;
**      9    : 断开GPRS网络,关闭PPP网络,同时关闭了GPRS模块电源。
** 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
PPPGPRSState  PPP_Running( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPP_Restart( );
**
**  功能描述 :重新启动PPP配置。该函数主要针对在进行TCP/IP数据通讯过程
**             中出现异常时的应用,可通过调用该函数重新启动GPRS操作。
**    
**  参    数 :无;
**    
**  返 回 值 :无;
**       
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
void PPP_Restart( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :IsTimeOut( );
**
**  功能描述 :检查函数的运行是否超时
**    
**  参    数 :无;
**    
**  返 回 值 : 
**       0   :没有超时;
**       1   :已经超时;
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int IsTimeOut( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :GPRSPowerOn( );
**
**  功能描述 :GPRS模块上电;
**    
**  参    数 :无;
**    
**  返 回 值 :返回GPRS模块的上电状态; 
**       0   :已经上电;
**       1   :还未上电;
**        
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   GPRSPowerOn( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPPInit( );
**
**  功能描述 :初始化PPP网络相关参数;
**    
**  参    数 :不填参数而使用缺省值;
**    
**  返 回 值 : 
**       0   :初始化成功;
**      -1   : 初始化失败;
**        
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   PPPInit( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :SendATCmd( );
**
**  功能描述 :发送AT指令并获取GPRS模块的响应值;
**    
**  参    数 :无;
**    
**  返 回 值 :返回获取AT指令的状态;
**       0   :获取到正确的AT响应;
**       1   : 已发送AT指令并进入接受响应的状态;
**      -1   : 未接受到正确的响应值;
**      
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   SendATCmd( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPPLinkUp( );
**
**  功能描述 :作为PPP的客户端,启动PPP连接,进行PPP认证,并检查PPP状态;
**    
**  参    数 :无;
**    
**  返 回 值 :
**       0   :PPP打开、PPP认证成功,进入网络层协议状态;
**       1   :处于PPP连接、认证状态中;
**      -1   :PPP打开、PPP认证失败。
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   PPPLinkUp( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPPPolling( );
**
**  功能描述 :获取PPP的状态;
**    
**  参    数 :无;
**    
**  返 回 值 :检查PPP的状态;
**       0   :表明GPRS上网、PPP配置成功,应用程序可进行TCP/IP通讯;
**       -1  : PPP处于关闭状态,可再重新建立PPP连接。
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   PPPPolling( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :PPPTermNet( );
**
**  功能描述 :断开GPRS网络,关闭PPP网络,同时关闭了GPRS模块电源;
**    
**  参    数 :无;
**    
**  返 回 值 : 
**       0   :执行动作成功;
**       1   : 正处于执行状态;
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   PPPTermNet( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :GPRSPowerIsOn( );
**
**  功能描述 :检查GPRS的上电状态;
**    
**  参    数 :无;
**    
**  返 回 值 :
**       0   :GPRS没有上电;
**       1   :GPRS已经上电;
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   GPRSPowerIsOn( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :EnableIGT( );
**
**  功能描述 :给GPRS模块上电,产生高电位脉冲,启动GPRS模块;
**    
**  参    数 :无;
**    
**  返 回 值 : 
**       0   :动作执行完毕;
**
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   EnableIGT( );


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :DisableIGT( );
**
**  功能描述 :产生低电位脉冲,启动GPRS模块;
**    
**  参    数 :无;
**    
**  返 回 值 : 
**       0   :动作执行完毕;
**       
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
int   DisableIGT( );


#endif

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
**
**  函    数 :
**
**  功能描述 :
**    
**  参    数 :
**    
**  返 回 值 : 
**    
**
**         
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -