AT-команда отправка в UART

Вопросы от новичков
Аватара пользователя
Nikan
Майор
Сообщения: 1194
Зарегистрирован: 29.12.2016{, 00:49}
Репутация: 100
Откуда: москва

AT-команда отправка в UART

#41

Сообщение Nikan » 22.12.2020{, 18:26}

.
Последний раз редактировалось Nikan 24.03.2023{, 02:38}, всего редактировалось 1 раз.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#42

Сообщение RT9U » 27.12.2020{, 14:59}

Добрый день! Некоторое время не занимался своим проектом.
проба4.flp
(149.07 КБ) 33 скачивания
немного переделал отсекание лишних знаков . Сейчас Ответ модема ОК уверенно принимается, сравнивается и другую команду отправляет. отсекать лишнее надо было. вот теперь только думаю, как сделать проверку следующей команды, все жестко увязано с третьей платой через переменную получена строка :smile427:

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#43

Сообщение Sancho » 28.12.2020{, 09:59}

RT9U писал(а):
27.12.2020{, 14:59}
немного переделал отсекание лишних знаков . Сейчас Ответ модема ОК уверенно принимается, сравнивается и другую команду отправляет. отсекать лишнее надо было. вот теперь только думаю, как сделать проверку следующей команды, все жестко увязано с третьей платой через переменную получена строка
ВЫ жёстко задали отсекание "сзади". Используйте предложенное раньше решение отсечение по индексу длина-2.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#44

Сообщение RT9U » 03.01.2021{, 09:29}

Sancho, да я пробывал как Вы писали, ОК идет с 2 знакоместами впереди ОК . Фото выше на ЛСД. У меня проблема со следующей командой. она проходит с ошибкой . Команда AT+SGACT=1,1. Пишет Error. Здесь наверное тоже какие то символы надо экранировать????? Если это так помогите заэкранировать

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#45

Сообщение Sancho » 03.01.2021{, 12:52}

RT9U, Посмотреть здесь

Отправлено спустя 2 минуты 18 секунд:
И вообще - какой модем, модель?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#46

Сообщение RT9U » 03.01.2021{, 13:07}

IRZ TG21.A
ушел. На свой юбилей :D сегодня не ждите

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#47

Сообщение Sancho » 03.01.2021{, 13:36}

RT9U писал(а):
03.01.2021{, 13:07}
ушел. На свой юбилей сегодня не ждите
Виталий Геннадьевич!
От всей души поздравляю с Полтинничком!!!
Здоровья и всего самого наилучшего!!!
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#48

Сообщение RT9U » 10.01.2021{, 09:37}

Sancho, Большое спасибо за поздравления!!
Собрал я софт в кучу. и не работает ничего. софт получился почти под завязку по памяти. ArduinoIDE пишет Недостаточно памяти, может работать неустойчиво, хотя там еще 2к памяти есть. По кускам пробовал тестировать все нормально, вместе не хочет работать.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#49

Сообщение RT9U » 11.01.2021{, 14:16}

немного обезличил проект. Выкладываю как есть. Не работает с первой платы. В первую плату воткнул LED13 и дисплей для контроля. АТ-Команда не уходит в UART, хотя LED13 загорается. Помогите разобраться :smile250:
на_ форум_2.flp
(717.43 КБ) 32 скачивания
Отправлено спустя 3 минуты 40 секунд:
Хотя в пробном проекте похожая структура у меня заработала. И соединение с сервером происходило.
на_ форум_3.flp
(189.49 КБ) 34 скачивания

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#50

Сообщение Sancho » 11.01.2021{, 14:32}

RT9U, Виталий. Опишите порядок команд и ответы на них. Что-бы не собирать их из проекта.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#51

Сообщение RT9U » 11.01.2021{, 15:19}

да верно, надо было пояснения дать... :smile9:
плата 1
формирователь входных сигналов. Срабатывает на любое действие ( как отжатие кнопки, так и нажатие), после элемента OR сигнал поступает на счетчик и после первого отчета происходит сброс счетчика, переменная сброса подается на TOF. Который отключится через 1 сек, Сигнал с ТОФ управляет Свичем, который отправляет переменную На открытия APN точки.
плата 2
Приемник информации из УАРТ. Переменная ok1_pusk активирует плату 3 при TRUE
плата3
фильтр сигнала ОК, который приходит от модема, в случае успешного выполнения ат-команды на открытие APN -точки ( см. плата 1)
плата 4
сравнение принятого ОК, если истина, то формируется команда на открытие сокета и формируется булленовская переменная для активации платы 5
Плата 5
фильтр сигнала ОК, который приходит от модема, в случае успешного выполнения ат-команды на открытие сокета
Плата 6
сравнение принятого ОК, если истина, то формируется команда на соединение с сервером и формируется булленовская переменная для активации платы 7
Плата 7
фильтр сигнала ОК, который приходит от модема, в случае успешного выполнения ат-команды на соединение с сервером
Плата 8
Сравнение с ОК , если TRUE формируется переменная pusk_TX, которая разрешает передачу информации в плате 9
Плата 9
Отправка информации в УАРТ
Плата 10
Возможно будет переделана.
смысл ее. После окончания передачи, нужно перевести модем в режим приема АТ-команд, для этого нужна строковая переменная +++ без перевода строки
далее окончание связи и закрытие сокета

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#52

Сообщение Sancho » 11.01.2021{, 16:02}

RT9U, Не нужно пояснения.
Нужен список команд для модема и возможные ответы на них.
Также, при отрицательном ответе, действия, например перезагрузка и всё с начала, или ...

Отправлено спустя 2 минуты 25 секунд:
Ещё непонятно, зачем два раза передавать окончание строки и перевод каретки - в константах и в блоке UART?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#53

Сообщение RT9U » 11.01.2021{, 16:43}

at+cgdcont=1,\"IP\",\"internet.tele2.ru\"
OK
at#sgact=1,1
OK
at#sd=1,0,хххх,\"хх.ххх.ххх.ххх\"
OK

+++ (без окончание строки и перевод каретки)
at#sh=1
at#sgact=1,0

Все команды были опробованы в терминальной программе. Единственно, что проверку на прохождение ОК в последних трех командах не делал. Пока не знаю как сделать. Обошелся таймерами. И не делал проверку на ERROR при передачи ат-команд. В терминальной программе команды проходят хорошо и быстро, хотя чутью, что надо делать :smile110:
Да кстати окончание строки и перевод каретки действительно 2 раза, но в пробном проекте помоему с 2-мя \r\n работало.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#54

Сообщение Sancho » 11.01.2021{, 17:19}

RT9U, Ну вот накидал.
Вложения
на_ форум_2_02.flp
(412.52 КБ) 33 скачивания
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#55

Сообщение RT9U » 11.01.2021{, 17:59}

Нда!! Александр!!! Спасибо конечно! Но с битами и байтами я еще не умею работать. Поэтому пока не разберусь, что к чему не буду использовать.... Вот не понимаю как работает BitW, описание самого блока в программе не залазиет в мою 50-летную голову. Короче надо походу со строками заканчивать работать :shok:

маленько поизучал.
Т.е. с помощью 3-х BitW Вы сформировали 3х-битное слово. ловко однако. И еще Использование SendToUart в таком виде, для меня конечно было новостью.
Александр! я поизучаю ваш файл, как пойму , что к чему. Отпишусь. Очень много информации, надо переварить.
RT9U 73's

Отправлено спустя 7 минут 48 секунд:
В 9 Плате входа наверное тоже инвертировать надо??

Отправлено спустя 48 минут 42 секунды:
Не удержался, прошил все таки ардуинку. В 9 плате инвертировал входа. Соединения с сервером нет. У нас уже поздно. Оставляю до завтра. Еще раз через терминал прогоню модем.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

AT-команда отправка в UART

#56

Сообщение Sancho » 12.01.2021{, 14:53}

RT9U, Подправил, протестил чуток
И ещё немного - переконект, если не дошли до 8
Вложения
на_ форум_2_06.flp
(477.38 КБ) 34 скачивания

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#57

Сообщение RT9U » 13.01.2021{, 17:46}

Sancho, сильно извиняюсь не правильную инфу дал по командам. сейчас попробовал частично заработало. но клинет. нужно не только по ОК сравнивать, но в одном случае по CONNECT
исправленный список команд:
соединение
at+cgdcont=1,\"IP\",\"internet.tele2.ru\"\r\n
OK
at##sgact=1,1\r\n
#SGACT: 10.163.236.39 - это присвоенный IP адрес
OK
at##sd=1,0,xxxx,\"xx.xxx.xxx.xxx\"\r\n
CONNECT

разъединение
+++
OK
at##sh=1
OK
at##sgact=1,0
OK

сейчас гонял модем на терминальной программе и выяснил такую ошибку, попробую в какой то шаг воткнуть проверку на CONNECT

Отправлено спустя 14 минут 17 секунд:
Нда! Придется наверное переделывать :( все там все завязано на приеме ОК в 3 плате. нету ОК и не будет отчета :fie:

Отправлено спустя 13 минут 19 секунд:
переделал . сейчас проверю

Отправлено спустя 57 минут 32 секунды:
Так, выяснилось следующее, Ат-команда на открытие сокета давала ERROR, Выяснилось, что сокет уже открыт. Воткнул во второй шаг соединения команду на выключение сокета at##sgact=1,0. Удалось обойти этот ERROR. Однако на пятом шаге ( соединение с сервером) выпадает ERROR, хотя команда написана правильно. Пока не знаю, что такое. Завтра после завтра буду разбираться. Ушел спать :sleep:

Отправлено спустя 54 секунды:
на_ форум_2_10.flp
(500.16 КБ) 26 скачиваний

RT9U
Рядовой
Сообщения: 36
Зарегистрирован: 09.04.2020{, 16:39}
Репутация: 0
Имя: Виталий

AT-команда отправка в UART

#58

Сообщение RT9U » 08.02.2021{, 16:33}

вернулся к своему проекту. не идет у меня счет. после передачи команды at+cgdcont=1,\"IP\",\"internet.tele2.ru\" и получения ОК не идет счет дальше. переменная Прием_отличный_73 формируется нормально, проверил поключение светодиода на выходе 13. Как я понял не может отфильроваться следующий ОК, т.к. передним по приему есть строка #SGACT: 10.163.236.39( ип может быть другим, это сотовый оператор выдает свободный внутренний адрес). Помогите, что-то вообще запутался.... :no:

Отправлено спустя 1 минуту 43 секунды:
может попробовать отфильтровать по #SGACT: ???

Ответить

Вернуться в «Начинающим»