Не работает GSM модуль SIM800L на AT не отвечает

Тема в разделе "Проводная и беспроводная связь", создана пользователем TheVladOs, 28 дек 2017.

  1. TheVladOs

    TheVladOs Нуб

    Здравствуйте! У меня не работает GSM модуль SIM800L. Пробовал переподключать разными способами, мигает нормально, но на AT не отвечает. всякая чушь выходит в виде квадратиков. Что делать?

    Код (C++):
    #include <SoftwareSerial.h>
    SoftwareSerial SIM800(0, 1);        // 0 - RX Arduino (TX SIM800L), 1 - TX Arduino (RX SIM800L)
    void setup() {
      Serial.begin(9600);               // Скорость обмена данными с компьютером
      Serial.println("Start!");
      SIM800.begin(9600);               // Скорость обмена данными с модемом
      SIM800.println("AT");
    }

    void loop() {
      if (SIM800.available());      // Ожидаем прихода данных (ответа) от модема...
      Serial.write(SIM800.read());    // ...и выводим их в Serial
      if (Serial.available());           // Ожидаем команды по Serial...
      SIM800.write(Serial.read());    // ...и отправляем полученную команду модему
    }
     
  2. TheVladOs

    TheVladOs Нуб

  3. rkit

    rkit Гуру

    serial-пины заняты под serial, как не странно. Подключите к другим.
     
  4. TheVladOs

    TheVladOs Нуб

    подключил к 8 и 9 соответственно. все равно не желает upload_2017-12-28_15-56-0.png
     
  5. TheVladOs

    TheVladOs Нуб

  6. SergeiL

    SergeiL Гуру

    Если нечитаемые символы, то предполагаю, что скорость не та. На 115200 пробовали?
     
  7. TheVladOs

    TheVladOs Нуб

    Теперь пробовал, все равно не хочет, точно также. может код не тот? upload_2017-12-28_16-11-13.png
     
  8. SergeiL

    SergeiL Гуру

    Код легко проверить.
    Отключаете модем от Ардуины, а провода RX и TX идущие от Ардуины замыкаете между собой.
    Дальше проверяете: то, что набираете в строке отправить, должно появляться на прием.
     
  9. DIYMan

    DIYMan Гуру

    Скоростями играйте, обычно SIM800L по умолчанию на 57600 работают. Ну и проверяйте правильность подключения, конечно. И да - на скоростях выше 9600 надо использовать только аппаратный UART для связи с модемом, SoftwareSerial не прокатит.
     
  10. TheVladOs

    TheVladOs Нуб

    То есть через юарт? как тогда через него?
     
  11. DIYMan

    DIYMan Гуру

    Как обычно. В чём проблема-то - подключить модуль к аппаратному UART ардуины и из кода общаться с ним?

    Проверить работоспособность модуля (а также подобрать скорости и т.п.) можно, имея USB-TTL-converter, эта железка обязана быть в наличии, если работаете с модулями, общающимися посредством UART. Подключаете SIM800 через конвертер к компу, открываете любую терминальную программу - и общаетесь с ним, ардуина тут не нужна. Через терминальную программу удобно перешить скорость общения с устройством, с помощью AT-команды, что в дальнейшем даст вам возможность юзать SoftwareSerial на стороне ардуины.
     
  12. Fikret

    Fikret Нуб

    посмотри. может тут есть ответ на твой вопрос. канал не мой, вообще не реклама