संपर्क / सिम कार्ड से संपर्क जमा करना


11

मेरे पास जीएसएम ढाल है और क्या सिम कार्ड पर संग्रहीत संपर्क प्राप्त करने का कोई तरीका है? ऐसा लगता है कि जीएसएम पुस्तकालय सिम कार्ड से डेटा पढ़ने / पढ़ने पर डेटा लिखने का समर्थन नहीं करता है?

मेरा उद्देश्य सिम कार्ड के फोन नंबर और सिम कार्ड पर कुछ चर को स्टोर करना है, जैसे, मुझे समय-समय पर कार्यक्रम को बदलने की आवश्यकता नहीं होगी।

मुझे केवल किसी भी मोबाइल फोन के माध्यम से सिम कार्ड में सभी चर दर्ज करने की आवश्यकता है (शायद संपर्क के रूप में चर को संग्रहीत करके, क्योंकि फोन बुक फ़ंक्शन फोन पर बहुत आम होना चाहिए)।

जवाबों:


6

आपने अब तक क्या शोध किया है? ढाल के लिए आपके द्वारा दिए गए लिंक के बाद, विवरण की तीसरी पंक्ति के बारे में चिप द्वारा उपयोग किए गए एटी कमांड सेट का संदर्भ है ।

मैंने इसके माध्यम से त्वरित खोज की और कुछ पाया:

2.2.4 ATD><n> मेमोरी में नंबर पर फोन कॉल की उत्पत्ति करें

3.2.26 AT+CPBF फ़ोन बुक प्रविष्टियाँ प्राप्त करें

3.2.27 AT+CPBR वर्तमान फोन बुक प्रविष्टियों को पढ़ें

3.2.28 AT+CPBS फोन बुक मेमोरी मेमोरी चुनें

शायद एक अच्छी जगह शुरू करने के लिए।


1

एटी कमांड प्रेरणा के लिए @ मदिवाड को धन्यवाद। मैं GSM और Arduino से बहुत परिचित नहीं हूं। लेकिन वैसे भी, नीचे मेरे लिए काम किया।

@Madivad और arduino फोरम के लोगों को श्रेय

#include <GSM.h>
GSM gsmAccess(true);
int sizer = 200;
char myNumber[200];
int timeout = 5000; // in milli seconds

void setup()
{
  Serial.begin(9600);

  boolean notConnected = true;

  Serial.println("Connecting to the GSM network");

  while(notConnected){
    if(gsmAccess.begin() == GSM_READY) // Note: I do not require PIN #
      notConnected = false;
    else {
      Serial.println("Not connected, trying again");
      delay(1000);
    }
  }

  Serial.println("Connected");

  theGSM3ShieldV1ModemCore.println("AT+CPBS=\"SM\"");  
  int start1 = millis();   
  while((millis() - start1) < timeout){
    Serial.print(theGSM3ShieldV1ModemCore.theBuffer().read());
  }   
  Serial.print("Set to look at SIM card storage");

  // search for contact name "test"
  theGSM3ShieldV1ModemCore.println("AT+CPBF=\"test\"");  
  start1 = 0;
  start1 = millis();   
  while((millis() - start1) < timeout && !theGSM3ShieldV1ModemCore.theBuffer().extractSubstring(",\"", "\",", myNumber, sizer)){
    Serial.print(theGSM3ShieldV1ModemCore.theBuffer().read());
  }   
  Serial.print("Got contact number");

 // print out the phone of "test"
 Serial.println(myNumber);

}

void loop()
{

}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.