UART, еще UART и SIM800L

switch
Offline
Зарегистрирован: 07.12.2015

Что-то умотал меня этот модуль. Расклад такой:

Мега 328, без кварца, венутренний генератор на 8 МГц установлен. Модуль SIM800L на красной плате. Питаю от лабораторного источника, на плате моей стоит преобразователь  lm2596 на 4 вольта для модема. Мега питается от него же. Имеем аппаратный UART и программный. Так же имеем UART TTL USB приблуду.

В ардуину залит простой тестовый скетч обмена между последовательными портами.

#include <SoftwareSerial.h>
SoftwareSerial SIM800(9, 8);        // 8 - RX Arduino (TX SIM800L), 9 - 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());    // ...и отправляем полученную команду модему
}

Подключаем модем к софтовому, комп к аппаратному - не работает

При чем если отправлять команды с компа то с софтового их видно. Так же видно как модем отвечает командами, но ардуина их не воспринимает. Если модем подключить к USB UART то с модемом нормально общаемся и все работает. С ардуиной тоже общаемся. А вот эти два между собой договориться не могут.

До этого стоял 168 чип, он работал. Как напаял 328 - перестало...

switch
Offline
Зарегистрирован: 07.12.2015

В качестве апа темы вот что выяснил:

перепаиваю чип на мега168 (новый взял) и тот код выше - работает. Запаял новый чиип 328 - не работает... Фюзы E2 DD FF...

Что может быть? Мозг уже сломал. Сравнил все осциллограммы - все по миллисекундам ровно. 

 

switch
Offline
Зарегистрирован: 07.12.2015

дубль удалил...

vlad072
Offline
Зарегистрирован: 01.08.2017

Во второй строчке RX/TX наоборот

switch
Offline
Зарегистрирован: 07.12.2015

vlad072 пишет:

Во второй строчке RX/TX наоборот

Да комментарий не совпадает с действительностью ;)

Есть предположение что нужно калибровать RC генератор, завтра пробовать буду

 

switch
Offline
Зарегистрирован: 07.12.2015

Все оказалось просто: 328-й меге не хватало уровня 2.8 вольт в качестве единицы. Понизил напряжение питания до  3.8 и заработало.

b707
Offline
Зарегистрирован: 26.05.2017

switch пишет:

Все оказалось просто: 328-й меге не хватало уровня 2.8 вольт в качестве единицы. Понизил напряжение питания до  3.8 и заработало.

что-то какая-то фигня у вас в схеме творится.... Если ардуина и модем оба питались от 4в - откуда ж единица получалась 2.8?

switch
Offline
Зарегистрирован: 07.12.2015

от модема