Kişileri alma / SIM karta kaydetme


11

Ben GSM kalkan ve SIM kartta saklanan kişileri almak için herhangi bir yolu var mı? O görünüyor GSM kütüphane SIM karttan üzerine / okuma verileri veri yazmayı desteklemez?

Amacım SIM kartın telefon numarasını ve bazı değişkenleri SIM kartın üzerine saklamaktır, bu nedenle programı zaman zaman değiştirmem gerekmez.

Tek yapmam gereken SIM karttaki tüm değişkenleri herhangi bir cep telefonu aracılığıyla girmek.

Yanıtlar:


6

Şimdiye kadar ne araştırdınız? Kalkan için verdiğiniz bağlantıyı takiben, açıklamanın üçüncü satırı çip tarafından kullanılan AT Komut Setine bir referanstır .

Sadece birkaç hızlı arama yaptım ve buldum:

2.2.4 ATD><n> Telefon görüşmesini bellekteki numaraya yönlendirin

3.2.26 AT+CPBF Telefon defteri girişlerini bulma

3.2.27 AT+CPBR Geçerli telefon defteri girişlerini okuma

3.2.28 AT+CPBS Telefon defteri bellek deposunu seçin

muhtemelen başlamak için iyi bir yer.


1

AT komutu ilhamı için @Madivad'a teşekkürler. GSM ve Arduino'ya pek aşina değilim. Neyse, aşağıda benim için çalıştı.

@Madivad ve arduino forumundaki kişilere verilen krediler .

#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()
{

}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.