Lib SIM5320 avec SMS
Dependents: 0-sim5320e-L432KC-relais-0
Diff: sim800l.h
- Revision:
- 1:8eff8b2b35e8
- Parent:
- 0:d63231e47571
--- a/sim800l.h Sun May 01 06:28:05 2022 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,70 +0,0 @@ -#ifndef _sim800l_ -#define _sim800l_ -#include "mbed.h" -#include "MySerial.h" -#ifndef maxdata -#define maxdata 99 // taille des phrasers de dialogues. -#endif -#define timeoutdefaut 1 -#define timeoutsendsms 60 -#define timeoutreadsms 5 -#define timewaitCallready 10 -#define timewaitSmsready 60 -#define timewaitSmsallclear 25 -#define timewaitCCID 2 - -extern MySerial pc; - -class Sim800l -{ -public: - /* - * Constructor - * - * @param tx mbed pin to use for tx line of Serial interface - * @param rx mbed pin to use for rx line of Serial interface - * @param reset reset pin of the wifi module () - */ - Sim800l(PinName tx, PinName rx, PinName resetpin, int baudrate=9600); - bool init(); - bool smsready(void); - bool sendsms(const char *phonenumber,const char *data); - bool readsms(int index); - bool smsclearall(void); - int IndexSmsRecu(void); - char *readtextesms(); - -protected: - RawSerial serial; - DigitalOut reset; - /* char *_DataTmp; // tableau de donnees pour stocker pendant reception - char *_Data; // tableau de donnees lorsque toutes les donnees sont recues - char *_DataSms; // tableau de donnees lorsque toutes les donnees sont recues - char *_Phrase; // pour convertir en phrase avant envoi - */ - - char _DataTmp[maxdata + 1]; // stocker pendant reception sur rxd en evenement - char _Data[maxdata + 1]; // stocke les donnees lorsqu'une phrase complete est recu - char _DataSms[maxdata + 1]; // stocke donnee lorsquun sms est recu - char _Phrase[maxdata + 1]; // phrase temporaire pour convertir en phrase avant envoi fprintf - - volatile int _DataPtr = 0; // position de stockage de la prochaine donnee a recevoir - volatile bool _DataReady = false; // des donnees complete ont ete recus - volatile bool _SmsReady = false; // un sms est recu - volatile int _IndexSms; // contient lindex du sms - Timeout _timeout; // permet deviter blocage en attente - volatile bool FinTimeOut; // - - bool dataready(void); // renvoi letat xe _dataready - char * read(void); - void receive(); - void Ftimeout(); - void SetTimeout(float delay); -// attente r eponse dans *reponse - bool waitreponse(const char *reponse,float timeout); -// envoi commande et attend reponse - bool writecmdandwaitreponse(const char *data, const char *reponse,float timeout); -// attente reponse dans *reponse - bool waitsmsreponse(const char *reponse,float timeout); -}; -#endif \ No newline at end of file