Страница 39 из 44 ПерваяПервая ... 29333435363738394041424344 ПоследняяПоследняя
Показано с 381 по 390 из 435
  1. #381
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    54
    Сообщений
    13,379
    Вес репутации
    10

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    А сконфигурировать, работу пина D9 на выход не нужно?

  2. #382
    Новичок
    Регистрация
    16.07.2012
    Возраст
    47
    Сообщений
    5
    Вес репутации
    147

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Все разобрался!
    Добавил "pinMode(GSM_ON, OUTPUT);"
    Стал включаться GSM Shield IComSat v1.1 вместе с включением Arduino. Рабочий код такой:


    Код:
    #include <SoftwareSerial.h>
    #define GSM_ON  9 
    
    SoftwareSerial phone(2, 3); // RX, TX
    
    void setup()  
    {
      // Open serial communications and wait for port to open:
      Serial.begin(9600);
      while (!Serial) {
        ; // wait for serial port to connect. Needed for Leonardo only
      }
      // generate turn on pulse
      pinMode(GSM_ON, OUTPUT);
      digitalWrite(GSM_ON, HIGH);
      delay(1200);
      digitalWrite(GSM_ON, LOW);
      delay(5000);
      phone.begin(9600);
      Serial.println("Setup end");
    }
    
    void loop() // run over and over
    {
      if (phone.available())
        Serial.write(phone.read());
      if (Serial.available())
        phone.write(Serial.read());
    }
    Chip, спасибо!
    Как раз сам тоже дошел до этого, в библиотеке кстати этого нет, добавить нужно вручную.

    PS
    Полезно светодиод иногда подключить для отладки.

    "Great minds think alike" (c)
    Последний раз редактировалось vseleznev; 19.07.2012 в 17:09.

  3. #383
    Новичок
    Регистрация
    16.07.2012
    Возраст
    47
    Сообщений
    5
    Вес репутации
    147

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Chip, спасибо!
    Последний раз редактировалось vseleznev; 19.07.2012 в 17:09.

  4. #384
    Новичок
    Регистрация
    07.08.2012
    Сообщений
    1
    Вес репутации
    0

    Вопрос Re: Управление внешними устройствами с Arduino при помощи СМС

    Добрый день!
    Заинтересовался вопросом сопряжения Arduino и сотового телефона. Набросал примеры в протеусе, смс отсылать удается (с телефона подключенного к компьютеру по mini-usb). Встал вопрос в выборе телефона. С последовательным портом телефоны практически канули в лету, большинство с интерфейсом mini-usb.
    Можно-ли, каким нибудь образом телефон с mini-usb подключить к Arduino?

  5. #385
    Продвинутый
    Регистрация
    20.05.2011
    Сообщений
    325
    Вес репутации
    225

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Цитата Сообщение от vseleznev Посмотреть сообщение
    Все разобрался!
    Добавил "pinMode(GSM_ON, OUTPUT);"
    Стал включаться GSM Shield IComSat v1.1 вместе с включением Arduino. Рабочий код такой:


    Код:
    #include <SoftwareSerial.h>
    #define GSM_ON  9 
    
    SoftwareSerial phone(2, 3); // RX, TX
    
    void setup()  
    {
      // Open serial communications and wait for port to open:
      Serial.begin(9600);
      while (!Serial) {
        ; // wait for serial port to connect. Needed for Leonardo only
      }
      // generate turn on pulse
      pinMode(GSM_ON, OUTPUT);
      digitalWrite(GSM_ON, HIGH);
      delay(1200);
      digitalWrite(GSM_ON, LOW);
      delay(5000);
      phone.begin(9600);
      Serial.println("Setup end");
    }
    
    void loop() // run over and over
    {
      if (phone.available())
        Serial.write(phone.read());
      if (Serial.available())
        phone.write(Serial.read());
    }
    Chip, спасибо!
    Как раз сам тоже дошел до этого, в библиотеке кстати этого нет, добавить нужно вручную.

    PS
    Полезно светодиод иногда подключить для отладки.

    "Great minds think alike" (c)
    Этот код нужно вставлять в каждый скетч для работы с сим900?
    Liliput 629 GL, Intel Atom N230 1.6, HDD 200 GB, ОЗУ 2GB, Globalsat GT-100.

  6. #386
    Продвинутый
    Регистрация
    20.05.2011
    Сообщений
    325
    Вес репутации
    225

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Цитата Сообщение от t4100 Посмотреть сообщение
    Добрый день!
    Заинтересовался вопросом сопряжения Arduino и сотового телефона. Набросал примеры в протеусе, смс отсылать удается (с телефона подключенного к компьютеру по mini-usb). Встал вопрос в выборе телефона. С последовательным портом телефоны практически канули в лету, большинство с интерфейсом mini-usb.
    Можно-ли, каким нибудь образом телефон с mini-usb подключить к Arduino?
    В принципе, можно. Если на плате найти Rx & Tx. В современных телефонах (на некоторых моделях) есть "инженерный (сервисный) разъем, так вот на таком разъеме иногда бывает. Нужно искать телефон с такими характеристиками, но это не легко. Наверное легче все-таки найти старенький телефон...
    Liliput 629 GL, Intel Atom N230 1.6, HDD 200 GB, ОЗУ 2GB, Globalsat GT-100.

  7. #387
    Новичок
    Регистрация
    27.08.2012
    Возраст
    44
    Сообщений
    15
    Вес репутации
    148

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Ребята, огромное спасибо за ветку, помогла много в чем разобраться.
    Купил Arduino Uno i Siemens TC35 board.
    Посылать СМСки получается без проблем, звонить - тоже.
    Но столкнулся с проблемой при чтении СМС.
    Перед чтением СМС набираю команду
    AT+CMGF=1 (переход в текстовый режим)

    В терминле все работает прекрасно, но когда начинаю считывать
    строку с помощью read появляются проблемы.
    Сначала текст идет правильно , показывает телефон, дату время, а затем идут значки &#255;&#255;&#255;&#255;&#255;&#255;&#255;&#255;&# 255;.
    Я читал что сталкивались с такой проблемой.
    Может расскажете почему она возникает?
    Из-за того что в буфер не влазит или?
    Спасибо

  8. #388
    Продвинутый
    Регистрация
    20.05.2011
    Сообщений
    325
    Вес репутации
    225

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Я так и не разобрался с этой проблемой. То она есть, то ее нет. Природа причины тоже не понятна.
    Liliput 629 GL, Intel Atom N230 1.6, HDD 200 GB, ОЗУ 2GB, Globalsat GT-100.

  9. #389
    Новичок
    Регистрация
    27.08.2012
    Возраст
    44
    Сообщений
    15
    Вес репутации
    148

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Вобщем помучался я хорошо, но кое-что из ТС35 удалось выжать
    Вот скетч для того чтобы включать и выключать звонком

    PHP код:
    #include <SoftwareSerial.h> 

    char gsm_char=0;  
    char d;//Stores character from the gsmSerial
    int i=1
    int ledPin 13;
    boolean Status;
    char strok[91]=""
    long previousMillis 0
    long interval 5000
    SoftwareSerial gsmSerial(2,3);  

    void setup()

      
    pinMode (ledPinOUTPUT);
      
    Status=LOW;
      
    //Initialize serial ports for communication.
      
    Serial.begin(9600);
      
    gsmSerial.begin(2400);
      
     for (
    i=1i<90i++) 
        { 
         
          
    strok [i] = gsmSerial.read();  
          
    Serial.println(strok[i]);
    }}

    void loop() {
     
      
    unsigned long currentMillis millis(); 
      if(
    currentMillis previousMillis interval

      { 
        
    previousMillis currentMillis

        
    gsmSerial.println("AT+CMGF=1\r");
        
    delay(5);
        for (
    i=1i<32i++) 
        { 
         
          
    strok [i] = gsmSerial.read();  
          
    Serial.println(strok[i]);
        }

        if ((
    strok[25] == '1') &&
          (
    strok[26]=='2') &&
          (
    strok[27]=='3') &&
          (
    strok[28]=='4')&&
          (
    strok[29]=='5')&&
          (
    strok[30]=='6')&&
          (
    strok[31]=='7')&&
          (
    Status == LOW))
        {
          
    gsmSerial.print("ATH\r");
          
    delay(2000);
          
    Serial.println("ON");
          
    digitalWrite(ledPinHIGH);
          
    StatusHIGH
          
          
    gsmSerial.print("AT+CMGS=+380501234567\r");
         
    delay(100);
         
    gsmSerial.print(" On"); 
          
    delay(10);
          
    gsmSerial.print("\x1A");
        }
       else
          if ((
    strok[25] == '1') &&
          (
    strok[26]=='2') &&
          (
    strok[27]=='3') &&
          (
    strok[28]=='4')&&
          (
    strok[29]=='5')&&
          (
    strok[30]=='6')&&
          (
    strok[31]=='7')&&
           (
    Status == HIGH))
          {
    gsmSerial.print("ATH\r");
          
    delay(2000);
           
    Serial.println("OFF");
           
    digitalWrite(ledPinLOW);
          
    Status LOW;
          
          
    gsmSerial.print("AT+CMGS=+380501234567\r"); 
         
    delay(100);
          
    gsmSerial.print(" Off"); 
          
    delay(10);
          
    gsmSerial.print("\x1A");
         }

       
    // Чистка буфера
       
    for (i=1i<80i++) 
        { 
          
          
    strok [i] = gsmSerial.read();  
          
    Serial.print(strok[i]);
          
         
          
        }
        
    delay(2000);

      }

    Попробуйте кто-нибудь на телефоне, интересно, работает или нет
    Последний раз редактировалось andrey1980; 29.08.2012 в 20:05.

  10. #390
    Местный
    Регистрация
    30.07.2011
    Возраст
    35
    Сообщений
    126
    Вес репутации
    183

    По умолчанию Re: Управление внешними устройствами с Arduino при помощи СМС

    Ребята скажите комбинацию AT+CNMI= чтобы модем начал отображать что смс пришла...

Страница 39 из 44 ПерваяПервая ... 29333435363738394041424344 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •