INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino GSM Shield Anruf mit "Knopfdruck" tätigen
22.12.2014, 15:20 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2014 16:04 von prinzpi.)
Beitrag #1
Arduino GSM Shield Anruf mit "Knopfdruck" tätigen
Hallo zusammen,

wir haben das Grundmodul (Arduino Uno) mit dem Arduino GSM Shield verbunden.

Das senden von SMS und auch anrufen funktioniert über den Seriellen Monitor problemlos Smile
Das senden von SMS funktioniert auch schon über einen externen Taster.

Jedoch haben wir Probleme, wenn wir einen Anruf über einen externen Knopf/Taster/Schalter tätigen wollen. Hat jemand eine Idee oder ein Beispielprogramm wie man das programmieren kann?

Danke & Gruß

Code:
#include <GSM.h>
#include <GSM3CircularBuffer.h>
#include <GSM3MobileAccessProvider.h>
#include <GSM3MobileCellManagement.h>
#include <GSM3MobileClientProvider.h>
#include <GSM3MobileClientService.h>
#include <GSM3MobileDataNetworkProvider.h>
#include <GSM3MobileMockupProvider.h>
#include <GSM3MobileNetworkProvider.h>
#include <GSM3MobileNetworkRegistry.h>
#include <GSM3MobileServerProvider.h>
#include <GSM3MobileServerService.h>
#include <GSM3MobileSMSProvider.h>
#include <GSM3MobileVoiceProvider.h>
#include <GSM3ShieldV1.h>
#include <GSM3ShieldV1AccessProvider.h>
#include <GSM3ShieldV1BandManagement.h>
#include <GSM3ShieldV1BaseProvider.h>
#include <GSM3ShieldV1CellManagement.h>
#include <GSM3ShieldV1ClientProvider.h>
#include <GSM3ShieldV1DataNetworkProvider.h>
#include <GSM3ShieldV1DirectModemProvider.h>
#include <GSM3ShieldV1ModemCore.h>
#include <GSM3ShieldV1ModemVerification.h>
#include <GSM3ShieldV1MultiClientProvider.h>
#include <GSM3ShieldV1MultiServerProvider.h>
#include <GSM3ShieldV1PinManagement.h>
#include <GSM3ShieldV1ScanNetworks.h>
#include <GSM3ShieldV1ServerProvider.h>
#include <GSM3ShieldV1SMSProvider.h>
#include <GSM3ShieldV1VoiceProvider.h>
#include <GSM3SMSService.h>
#include <GSM3SoftSerial.h>
#include <GSM3VoiceCallService.h>



// PIN Number
#define PINNUMBER ""

// initialize the library instance
GSM gsmAccess; // include a 'true' parameter for debug enabled
GSMVoiceCall vcs;

String remoteNumber = "0171XXXXXX";  // the number you will call
char charbuffer[20];

void setup()
{

  // initialize serial communications
  Serial.begin(9600);

  Serial.println("Make Voice Call");
  
  // Declare Pin 4 as INPUT
  pinMode(4,INPUT_PULLUP);

  // connection state
  boolean notConnected = true;

  // Start GSM shield
  // If your SIM has PIN, pass it as a parameter of begin() in quotes
  while(notConnected)
  {
    if(gsmAccess.begin(PINNUMBER)==GSM_READY)
      notConnected = false;
    else
    {
      Serial.println("Not connected");
      delay(1000);
    }
  }

  Serial.println("GSM initialized.");
  Serial.println("Enter phone number to call.");

}

void loop()
{
  

  // add any incoming characters to the String:
  while (Serial.available() > 0)
  {
    char inChar = Serial.read();
    // if Pin 4 is LOW, that means you should make the call:
    if (digitalRead(4)==LOW)
    {
      // make sure the phone number is not too long:
      if (remoteNumber.length() < 20)
      {
        // show the number you're calling:
        Serial.print("Calling to : ");
        Serial.println(remoteNumber);
        Serial.println();

        // Call the remote number
        remoteNumber.toCharArray(charbuffer, 20);


        // Check if the receiving end has picked up the call
        if(vcs.voiceCall(charbuffer))
        {
          Serial.println("Call Established. Enter line to end");
          // Wait for some input from the line
          while(Serial.read()!='\n' && (vcs.getvoiceCallStatus()==TALKING));          
          // And hang up
          vcs.hangCall();
        }
        Serial.println("Call Finished");
        remoteNumber="";
        Serial.println("Enter phone number to call.");
      }
      else
      {
        Serial.println("That's too long for a phone number. I'm forgetting it");
        remoteNumber = "";
      }
    }
    else
    {
      // add the latest character to the message to send:
      if(inChar!='\r')
        remoteNumber += inChar;
    }
  }
}


Hier unser Code
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.05.2015, 12:52
Beitrag #2
RE: Arduino GSM Shield Anruf mit "Knopfdruck" tätigen
Hallo Prinzpi,

ich beschäftige mich erst seit kurzen mit der Programmierung des arduino
und bin leider bis jetzt da nicht so ganz durchgestiegen. Sad
Du hast geschrieben, dass du schon ein Sketch über das versenden einer
SMS bei drücken eines Tasters hast.

Könntest du mir vielleicht diesen Sketch zur Verfügung stellen?

Vielen Dank!
hackbarth
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  motor shield hankewitz 2 211 24.11.2016 08:11
Letzter Beitrag: Binatone
  Arduino mit DFRobot DMX Shield - Wer hilft mir auf die Sprünge??? colmans 1 627 11.01.2016 20:23
Letzter Beitrag: fraju
Thumbs Up Facebook LCD (Like Crystal Display) mit Ethernet Shield Wampo 0 985 02.12.2015 23:05
Letzter Beitrag: Wampo
  Ethernet- und Motor Shield mit Bipolarem Motor weekendproject 2 1.297 03.04.2015 12:18
Letzter Beitrag: weekendproject
  GSM Shield Programmierung ArduinoUno_GSM 1 2.659 08.10.2014 23:04
Letzter Beitrag: Imgrish
  Arduino GSM Shield tristan74656 0 1.265 17.05.2014 16:25
Letzter Beitrag: tristan74656
  Arduino Neuling: Zugeklappten Laptop mit Arduino aufwecken + Kiste aufklappen? Ikearegal 2 2.527 02.02.2014 07:59
Letzter Beitrag: Ikearegal
  WebServer mit Ethernet Shield--->Fehler im Programm Wampo 0 2.021 22.08.2013 13:13
Letzter Beitrag: Wampo

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste