MyGSM.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #include <Arduino.h>
  2. #include "MyGSM.h"
  3. bool flagOn = false;
  4. MyGSM::MyGSM(int pin)
  5. {
  6. pinMode(pin, OUTPUT);
  7. digitalWrite(pin, LOW);
  8. _pin = pin;
  9. }
  10. void MyGSM::initShield(){
  11. if(flagOn == false){
  12. digitalWrite(_pin, LOW);
  13. delay(10);
  14. digitalWrite(_pin, HIGH);
  15. delay(500);
  16. digitalWrite(_pin, LOW);
  17. flagOn = true;
  18. }
  19. else return;
  20. }
  21. void MyGSM::enterPin(){
  22. }
  23. void MyGSM::send_AT_cmd(const char *at_cmd, char *at_rep)
  24. {
  25. Serial1.print(at_cmd);
  26. int strCount = 0;
  27. if(strlen(at_cmd) != 0) {
  28. Serial.print("\r[*] Sent : ");
  29. Serial.print(at_cmd);
  30. Serial.println();
  31. }
  32. delay(100);
  33. while(Serial1.available()>0) {
  34. char reponse = Serial1.read();
  35. at_rep[strCount] = reponse;
  36. strCount++;
  37. }
  38. at_rep[strCount]='\0';
  39. delay(500);
  40. if(strCount != 0){
  41. Serial.println("\r\r[*] Received :");
  42. Serial.println(at_rep);
  43. }
  44. }
  45. //Return True if string find on buf
  46. bool MyGSM::sortRecv(char *buf, char *string)
  47. {
  48. if(strstr(buf, string) != NULL) {
  49. return true;
  50. }
  51. else return false;
  52. }
  53. char MyGSM::cutRecv(char *buf, char *strBegin, char *strEnd)
  54. {
  55. /* char *token, *endtoken;
  56. token = strchr(buf, strBegin);
  57. token++;
  58. endtoken = strchr(token, strEnd);
  59. *endtoken = '\0';
  60. return *token;*/
  61. }