реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Темп выдачи команд в SIM900, обмен затыкается
ssokol
сообщение Sep 6 2012, 10:55
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 615
Регистрация: 14-02-08
Из: г. Рыбинск, Ярославская область
Пользователь №: 35 028



Цитата(Hoodwin @ Sep 6 2012, 14:22) *
Относительно рекомендаций, не могли бы Вы конкретно написать, что именно еще не рекомендуется этому модулю делаться.

Паяться "нехорошими" флюсами и отмываться в уз ванне.
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение Sep 6 2012, 11:02
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Цитата(Hoodwin @ Sep 6 2012, 12:07) *
Осталось теперь разобраться, что значит лучше выдерживать какие то разумные паузы между командами? Существует описание, поясняющее величину пауз? желательно в измеряемых единицах: мкс, мс, с, а не абстрактно "разумных". Я собственно, про это и спрашиваю с самого начала. sm.gif


А не проще просто ждать ответов на команды? На локальные команды - ОК и прочее возвращает моментально. А "эфирные" - в любом случае ждать, хочете вы этого или нет.
Не надо никаких задержек. Работайте так, как будто вместо контроллера - человек работающий через гипертерминал. Выигрыш во времени всё равно мизерный. Есть рекомендации на некоторые команды - CIICR например, - где надо и минуту ждать. Регистрация в сети - тоже не меньше минуты ожидания.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 6 2012, 11:14
Сообщение #18


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Так я же вроде бы написал, что мы ждем ответов и посылаем следующее после приема ОК или ERROR. Но вот уперлись в то, что иногда это почему-то останавливается. Я пытаюсь разобраться, в чем дело. Как человек оно вроде работает, а вот как автомат оно гораздо быстрее в него команды пихать может. Меня даже не напрягает подождать чуть больше в командах конфигурации, я не хочу двух вещей:
1) чтобы была очень низкая скорость передачи данных через инет (по сранению с эфирной скоростью).
2) чтобы вся эта стейт-машина могла долго жить без зависаний, а в редких случаях лечилась вочдогом с переинициализацией, что в целом не влияло бы на характеристики производительности и доступности.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 6 2012, 11:20
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Hoodwin @ Sep 6 2012, 14:14) *
2) чтобы вся эта стейт-машина могла долго жить без зависаний, а в редких случаях лечилась вочдогом с переинициализацией, что в целом не влияло бы на характеристики производительности и доступности.

А кто виснет-то SIM900 или управляющий МК?
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 6 2012, 11:25
Сообщение #20


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Не, МК ничего такой, довольно живучий, даже без вочдога. Хотя вочдог в нем тоже есть. Я имел ввиду именно зависание управляющего потока, который рулит модулем GSM.
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение Sep 6 2012, 11:26
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Цитата(Hoodwin @ Sep 6 2012, 14:14) *
Так я же вроде бы написал, что мы ждем ответов и посылаем следующее после приема ОК или ERROR. Но вот уперлись в то, что иногда это почему-то останавливается. Я пытаюсь разобраться, в чем дело. Как человек оно вроде работает, а вот как автомат оно гораздо быстрее в него команды пихать может. Меня даже не напрягает подождать чуть больше в командах конфигурации, я не хочу двух вещей:
1) чтобы была очень низкая скорость передачи данных через инет (по сранению с эфирной скоростью).
2) чтобы вся эта стейт-машина могла долго жить без зависаний, а в редких случаях лечилась вочдогом с переинициализацией, что в целом не влияло бы на характеристики производительности и доступности.


Баудрейт поставте фиксированный и кварц "чётный".
Кстати а перед переходом в прозрачный режим сменить скорость не резон? Я не пробовал, но по идее то работать должно.
Надо проверить.
Go to the top of the page
 
+Quote Post
Master of Nature
сообщение Sep 6 2012, 11:43
Сообщение #22


Мыслящий
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 20-07-07
Из: Самара
Пользователь №: 29 270



Цитата(MKdemiurg @ Sep 6 2012, 15:26) *
Кстати а перед переходом в прозрачный режим сменить скорость не резон? Я не пробовал, но по идее то работать должно.
Надо проверить.
AT+IPR на лету работает.
Вот только OK на него ждать не стоит.
Хотя проверял я это только в ручном режиме. В автомате такого не делал, не приходилось.
Да и с затыками такими что-то не сталкивался....


--------------------
FAQ по AD
Форум по AD
Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью.
...стоит запомнить ...вернее задуматься.
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Sep 6 2012, 11:56
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



Если с автоопределения на фиксированую - то на лету без проблем.
А вот с фиксированой на другую фиксированую....

Вобщем там так - если не уходить ниже 9600 - то туда-сюда скорость меняется нормально
Если уйти на 2400 или ниже, а потом вернуться назад на 115200, то может с первого разу не перейти - но правда даст ERROR


--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 6 2012, 12:32
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Hoodwin @ Sep 6 2012, 14:25) *
Я имел ввиду именно зависание управляющего потока, который рулит модулем GSM.

А что он у вас один?
Да и как бы не зависание это, а скорей ожидание окончания стадии GSM - ничего не поделать.
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 6 2012, 12:59
Сообщение #25


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Не понял, зачем менять скорость?

Артем
Ну проблема в том, что у модуля не очень то унифицирована система ответов. Кроме простых ОК и ERROR, бывают еще всякие ответы unsolicited, причем они не обязательно с + начинаются, не обязательно вызваны действиями, которые мы до этого программировали. В итоге все это приводит к тому, что нет никакой гарантии, что тот автомат, который у нас работает, не уйдет в какое-нибудь нелепое ожидание. Например, ждем OK, а пришло уведомление об СМС. Послали AT+CIPSTART..., в ответ получаем ERROR, собираемся все заново начинать, но потом через какое-то время "0,ALREADY CONNECTED".

В общем, хочется, чтобы во всем этом многообразии ответов система не ушла в бесконечный цикл долбежки в закрытую дверь, а планомерно откатывалась на более высокий уровень повторной инициализации. И чтобы программа при этом не стала занимать больше, чем вся память МК...
Go to the top of the page
 
+Quote Post
MKdemiurg
сообщение Sep 6 2012, 13:08
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939



Цитата(Hoodwin @ Sep 6 2012, 15:59) *
В общем, хочется, чтобы во всем этом многообразии ответов система не ушла в бесконечный цикл долбежки в закрытую дверь, а планомерно откатывалась на более высокий уровень повторной инициализации. И чтобы программа при этом не стала занимать больше, чем вся память МК...


Эээээ...А тайминги и попытки ввести никак?
Ну там 10 раз с интервалом в 5 секунд проверит AT+CREG?

Или если не получаете CONNECT - перезапустить сессию?
-------
Анализируйте только то, что вам надо! А отключение питания вы зря не ввели. 100% придётся грейдить плату.
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Sep 6 2012, 13:25
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



>>>>Например, ждем OK, а пришло уведомление об СМС. Послали AT+CIPSTART..., в ответ получаем ERROR, собираемся все заново начинать, но потом через какое-то время "0,ALREADY CONNECTED".

Ну это не самое худшее, и решаемо - думаю что все здесь с таким сталкивались на разных модулях, это особенности работы с GSM.
Хуже когда добавляется то что у разных операторов поведение может быть разное, затем в разных регионах у одного оператора, затем еще фишки операторов с отступлениями в карточках от стандарта.......

Ну а по поводу обмена вернусь к одной из прозвучавших ранее фраз:

"И таймауты вроде были нормальные, во всяком случае тот же код (буквально, тот же исходник, собранный в Visual Studio 2005) нормально работал с внешней отладкой на 115200. А на микрооконтроллере не завелся. Стали разбираться и выяснили, что обмен встает."

Если с отладкой с компа затыков не было, то копать однозначно стыковку и скорость.
Кстати еще момент - плата помыта хорошо? Флюса под модулем не осталось? Конденсатор на VRTC не забыли повесить?


--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 14:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.0158 секунд с 7
ELECTRONIX ©2004-2016