Final Code 12/19/2015

Dependencies:   Chemical_Sensor_DMA GPRS DPG_FINAL MBed_Adafruit-GPS-Library SDFileSystem Socket mbed

Committer:
DeWayneDennis
Date:
Sat Dec 19 21:58:45 2015 +0000
Revision:
23:0ce1f69ea710
Parent:
21:3d922bea5d77
Final Code 12/19/2015

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DeWayneDennis 19:404594768414 1 /*
DeWayneDennis 19:404594768414 2 GPRSInterface.h
DeWayneDennis 19:404594768414 3 2014 Copyright (c) Seeed Technology Inc. All right reserved.
DeWayneDennis 19:404594768414 4
DeWayneDennis 19:404594768414 5 Author:lawliet zou(lawliet.zou@gmail.com)
DeWayneDennis 19:404594768414 6 2014-2-24
DeWayneDennis 19:404594768414 7
DeWayneDennis 19:404594768414 8 This library is free software; you can redistribute it and/or
DeWayneDennis 19:404594768414 9 modify it under the terms of the GNU Lesser General Public
DeWayneDennis 19:404594768414 10 License as published by the Free Software Foundation; either
DeWayneDennis 19:404594768414 11 version 2.1 of the License, or (at your option) any later version.
DeWayneDennis 19:404594768414 12
DeWayneDennis 19:404594768414 13 This library is distributed in the hope that it will be useful,
DeWayneDennis 19:404594768414 14 but WITHOUT ANY WARRANTY; without even the implied warranty of
DeWayneDennis 19:404594768414 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
DeWayneDennis 19:404594768414 16 Lesser General Public License for more details.
DeWayneDennis 19:404594768414 17
DeWayneDennis 19:404594768414 18 You should have received a copy of the GNU Lesser General Public
DeWayneDennis 19:404594768414 19 License along with this library; if not, write to the Free Software
DeWayneDennis 19:404594768414 20 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
DeWayneDennis 19:404594768414 21 */
DeWayneDennis 19:404594768414 22 #ifndef __GPRSINTERFACE_H__
DeWayneDennis 19:404594768414 23 #define __GPRSINTERFACE_H__
DeWayneDennis 19:404594768414 24
DeWayneDennis 19:404594768414 25 #include "GPRS.h"
DeWayneDennis 19:404594768414 26 #include "TCPSocketConnection.h"
DeWayneDennis 19:404594768414 27 #include "TCPSocketServer.h"
DeWayneDennis 19:404594768414 28
DeWayneDennis 19:404594768414 29 /** Interface using GPRS to connect to an IP-based network
DeWayneDennis 19:404594768414 30 *
DeWayneDennis 19:404594768414 31 */
DeWayneDennis 19:404594768414 32 class GPRSInterface: public GPRS
DeWayneDennis 19:404594768414 33 {
DeWayneDennis 19:404594768414 34
DeWayneDennis 19:404594768414 35 public:
DeWayneDennis 19:404594768414 36
DeWayneDennis 19:404594768414 37 /** Constructor
DeWayneDennis 19:404594768414 38 * @param tx mbed pin to use for tx line of Serial interface
DeWayneDennis 19:404594768414 39 * @param rx mbed pin to use for rx line of Serial interface
DeWayneDennis 19:404594768414 40 * @param baudRate serial communicate baud rate
DeWayneDennis 19:404594768414 41 * @param apn name of the gateway for GPRS to connect to the network
DeWayneDennis 19:404594768414 42 * @param userName apn's username, usually is NULL
DeWayneDennis 19:404594768414 43 * @param passWord apn's password, usually is NULL
DeWayneDennis 19:404594768414 44 */
DeWayneDennis 19:404594768414 45 GPRSInterface(PinName tx, PinName rx, int baudRate, const char* apn, const char* userName = NULL, const char *passWord = NULL);
DeWayneDennis 19:404594768414 46
DeWayneDennis 19:404594768414 47 /** Initialize the interface(no connection at this point).
DeWayneDennis 19:404594768414 48 * @return 0 on success, a negative number on failure
DeWayneDennis 19:404594768414 49 */
DeWayneDennis 19:404594768414 50 int init();
DeWayneDennis 19:404594768414 51
DeWayneDennis 19:404594768414 52 /** Connect to the network and get IP address
DeWayneDennis 19:404594768414 53 * @returns 0 on success, a negative number on failure
DeWayneDennis 19:404594768414 54 */
DeWayneDennis 19:404594768414 55 int connect();
DeWayneDennis 19:404594768414 56
DeWayneDennis 19:404594768414 57 /** Disconnect with the network
DeWayneDennis 19:404594768414 58 * @returns 0 on success, a negative number on failure
DeWayneDennis 19:404594768414 59 */
DeWayneDennis 19:404594768414 60 int disconnect();
DeWayneDennis 19:404594768414 61
DeWayneDennis 19:404594768414 62 /** Get IP address
DeWayneDennis 19:404594768414 63 * @returns ip address
DeWayneDennis 19:404594768414 64 */
DeWayneDennis 19:404594768414 65 char* getIPAddress();
DeWayneDennis 19:404594768414 66
DeWayneDennis 21:3d922bea5d77 67 /** Get Phone Number
DeWayneDennis 21:3d922bea5d77 68 * @returns current phone number
DeWayneDennis 21:3d922bea5d77 69 */
DeWayneDennis 21:3d922bea5d77 70 char* getPhoneNumber();
DeWayneDennis 19:404594768414 71
DeWayneDennis 19:404594768414 72 bool checkOK();
DeWayneDennis 19:404594768414 73 private:
DeWayneDennis 19:404594768414 74
DeWayneDennis 19:404594768414 75 char ip_string[20];
DeWayneDennis 19:404594768414 76 bool ip_set;
DeWayneDennis 19:404594768414 77 };
DeWayneDennis 19:404594768414 78
DeWayneDennis 19:404594768414 79 #endif