uses pushing box to publish to google spreadsheets with a state machine instead of a while loop

Fork of GSM_Library by DCS_TEAM

Committer:
danilob
Date:
Thu Mar 05 21:24:31 2015 +0000
Revision:
2:8352ad91f2ee
Parent:
0:41904adca656
Child:
7:6c0b6ab3cafe
state machine v1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
danilob 0:41904adca656 1 #ifndef GSMLIBRARY_H
danilob 0:41904adca656 2 #define GSMLIBRARY_H
danilob 0:41904adca656 3
danilob 0:41904adca656 4 #include "mbed.h"
danilob 0:41904adca656 5
danilob 0:41904adca656 6 enum gsm_states{GSM_INITIALIZE,
danilob 0:41904adca656 7 GSM_AT_OK, //Make sure communication is stablished betheen fdm and gsm
danilob 0:41904adca656 8 GSM_AT_CSQ, //Check signal strength if strenght lower than 10 keep trying
danilob 0:41904adca656 9 GSM_AT_CREG, //Checking if phone is conected to network
danilob 0:41904adca656 10 GSM_AT_CMGF, //prepare phone to send message by CMGF=1
danilob 0:41904adca656 11 GSM_AT_CMGS, //input phone number by CMGS= "+phonenumber"
danilob 0:41904adca656 12 GSM_AT_SENDSMS, //write message, finish with alt+z
danilob 0:41904adca656 13 GSM_SUCCESS //check if message was send correctly
danilob 0:41904adca656 14 };
danilob 0:41904adca656 15
danilob 0:41904adca656 16
danilob 0:41904adca656 17 //GSM state machine
danilob 0:41904adca656 18 void gsm_tick();
danilob 0:41904adca656 19
danilob 0:41904adca656 20 //Initialize DMA data transfer, and UART3.
danilob 0:41904adca656 21 void gsm_initialize();
danilob 0:41904adca656 22
danilob 0:41904adca656 23 //begin message transmission
danilob 0:41904adca656 24 void start();
danilob 0:41904adca656 25
danilob 0:41904adca656 26 //Brings state machine back to initialize state (notice this is different than initialize function)
danilob 0:41904adca656 27 //this will set flags to initial values and prepare gsm to work anew.
danilob 0:41904adca656 28 void reset();
danilob 0:41904adca656 29
danilob 0:41904adca656 30 //used for debuging purposes, it print all main registers from dma0 and uart3
danilob 0:41904adca656 31 void print_registers();
danilob 0:41904adca656 32
danilob 0:41904adca656 33 #endif