Полная версия этой страницы:
SIM800C Sleep Mode
Mysteo
Oct 17 2017, 08:13
Здравствуйте! Подскажите как грамотно отослать данные по UART , используется только RX и TX, в самом даташите сказано, что надо отправить любой байт данных и после 100мс отправлять данные. А в appnote сказано , что надо отправлять данные непрерывно, пока не придет ответ от модуля. Чему верить?
Использую AT+CSCLK = 2 .
CADiLO
Oct 17 2017, 08:46
Отправить AT несколько раз.
Когда получили ОК - перевести модуль на фиксированную скорость.
AT+IPR=9600
AT&W
Перегружаем модуль и далее уже работаем на фиксированной скорости без всяких задержек.
Если модуль усыпляем - то лучше использовать DTR для просыпания.
Игра на задержках это баловство для студентов - сделать абы сдать.
И если предполагается передача больших объемов данных, или работа на скорости выше чем 9600, то использование RTS/CTS очень рекомендуемо чтобы не терять данные.
vit496
Oct 17 2017, 13:06
Да нормально и без DTR можно работать, чуть дольше только выход из сна
AT\r
пауза 200 мс
AT\r
OK
затем сразу
AT+SLEEP=0\r
OK
..... //делаем неспеша, что нужно и опять засыпаем
AT+SLEEP=2
CADiLO
Oct 17 2017, 13:32
Можно и так. Но сапог (DTR) в бою надежнее
Mysteo
Oct 18 2017, 08:34
Понял, спасибо большое, а зачем перезагружать модуль если можно просто включить режим AT+CSCLK = 0 ?
Скорость у меня 230400 , пока проблем с передачами не было без RTS/CTS, объемы данных до 200килобайт за минуту
vit496
У меня так и реализовано, но сделаю для надежности через DTR как велят старожилы
Mysteo
Oct 18 2017, 10:39
Если использовать DTR , то тогда придется применять AT+CSCLK=1 , в таком случае при входящем событии на модуль (звонок либо смс ) в таком случае необходимо отслеждивать вывод UART_RI и пробуждать SIM800 через DTR ?
Или при AT+CSCLK = 1 уровень на RI не будет меняться?
CADiLO
Oct 18 2017, 11:36
Если для вас важно входящее событие, то да.
Если инициатор само устройство, то игнорируйте.
Вам что жалко пару линий портов для большей функциональности????
It’s recommended connect the RI to an interrupt port of MCU. It can be used for waking up from power saving mode. That means the MCU will receive an interrupt while a falling edge coming on RI.
ArtemKAD
Oct 18 2017, 18:55
Цитата
Вам что жалко пару линий портов для большей функциональности????
Линий портов всегда жалко. Особенно когда функциональности как таковой не добавляется. Прерывание по приему символа в UART при входящем событии ничуть не хуже прерывания по ноге RI.
Mysteo
Oct 18 2017, 21:22
В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать
vit496
Oct 19 2017, 09:43
Цитата(Mysteo @ Oct 19 2017, 01:22)
В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать
Не молчит. +CRING: VOICE, +CLIP: "+7906211... Все как обычно.
ArtemKAD
Oct 20 2017, 01:33
Цитата(Mysteo @ Oct 19 2017, 00:22)
В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать
Ничего не молчит - все асинхронные сообщения приходят как и должны приходить. Особенность лишь в том, что для того, что-бы что-то ответить на эти сообщения(отослать что-то в модуль) надо по-любому дернуть DTR и подождать 80мс.
Mysteo
Oct 20 2017, 06:45
Спасибо! потребление около 6 мА в данном режиме, что на 5 мА больше чем в даташите, в чем может быть косяк?
Напряжение подавал напрямую, подключение SIM как в даташите, светодиоды все выпаял, согласование UART на транзисторах сделано, но там столько жрать не должно
CADiLO
Oct 20 2017, 09:45
Подпитка по портам где-то осталась.
Мы 0.7 мА получали переводя выход UART контроллера в Z состояние.
И потом только контролировали RI для просыпания.
Mysteo
Oct 20 2017, 10:37
Буду разбираться, что то в платке с модулем жрёт, сейчас попробую выпаять транзисторы, согласующие уарт, при clk = 2 и cfun = 0 кушает 3 - 4 мА, ножки которые с МК соединены разорвал толку нет
ArtemKAD
Oct 20 2017, 10:54
pwrkey часом не навечно на массе?
Mysteo
Oct 20 2017, 11:14
Через 4.7 кОм и кондер на земле , сейчас грешу на транзисторы согласования UART, плата китайская с али
вот такая у кого то на форуме тоже такие платы были , не жаловалисмь вроде, хотя не факт что сон использоовали
alex2103
Oct 20 2017, 11:26
У меня примерно такие же результаты (около 4-5ма) при AT+CSCLK=2.
Выключить UART не могу т.к. мне важны данные от модуля для просыпания МК и поддержки TCP соединения.
Обязательно ли переводить пины uart в Z-состояние для правильного сна? Powerkey у меня отдельным транзистором. Питание МК 3,0В. UART к sim800c через делители.
Так же было и с SIM28ML: не засыпал на $PMTK161 до тех пор пока не выключил UART.
Mysteo
Oct 20 2017, 12:50
Я на своем проверил в Z состояние перевод ничего не дает мне, а вот при использовании микросхемы MAX2322 (232 интерфейс ) и при переводе в Z состояние выигрывалось 5мА, так как убиралась фантомная подпитка через UART.
Сейчас попробую на своем стареньком SIM900D попробовать режим сна и напишу результат. Но в принципе по любому косяк в плате где-то , еще не понимаю. зачем в схеме диод шоттки нужен , в даташите он также есть , типо для защиты от переполюсовки ?
SIM900D при AT+CSCLK=2 у меня 3мА кушает
Цитата(alex2103 @ Oct 20 2017, 14:26)
У меня примерно такие же результаты (около 4-5ма) при AT+CSCLK=2.
Выключить UART не могу т.к. мне важны данные от модуля для просыпания МК и поддержки TCP соединения.
Обязательно ли переводить пины uart в Z-состояние для правильного сна? Powerkey у меня отдельным транзистором. Питание МК 3,0В. UART к sim800c через делители.
Так же было и с SIM28ML: не засыпал на $PMTK161 до тех пор пока не выключил UART.
А можете AT+CFUN=0 и AT+CSCLK=2 дать , сказать потребление
У меня дело точно в плате, потому что при
AT+CFUN=1 и AT+CSCLK = 2 потребление 6мА
AT+CFUN=0 AT+CSCLK = 2 потребление 5мА
разница как раз 1мА что и заявлено в даташите, остальное по ходу плата где то кушает
Выпаял все что можно потребление при выключенном передатчике и режиме сна так и не упало ниже 5мА
Осталось выпаять неизвестный мне элемент идущий на BT_ANT и сборку защитных диодов SMF05C , заметил, что резисторы идущие на SIM не по даташиту , в DS 50 Ом , а тут 22 Ом
ArtemKAD
Oct 20 2017, 13:08
Цитата(Mysteo @ Oct 20 2017, 14:14)
Через 4.7 кОм и кондер на земле ,
Куда 4,7к подключены?
alex2103
Oct 20 2017, 13:35
Я тоже проверил и не поверил... После AT+CSCLK=2 спустя 5 секунд потребление меньше 1мА. Точнее сейчас измерить не могу.
Не знаю что было раньше, но такого малого потребления раньше не наблюдал.
Mysteo
Oct 20 2017, 14:26
Блин что же столько кушать может (( в понедельник попробую выпаять диодную сборку, хотя вряд ли в этом дело так как все 5 плат так себя ведут
CADiLO
Oct 20 2017, 14:28
Ищите. Проблема обычно в вытекающих токах. Ноль на линии передачи (стоповый бит), поверкей с ненужными резисторами, делитель на UART (для сна лучше все-таки отключаемое согласование).....
Кстати был случай с битыми конденсаторами на VSIM - кондер имел сопротивление около 20 килоом. Модуль засыпал, но потребление не падало.
Mysteo
Oct 20 2017, 14:32
В понедельник буду смотреть, PWRKEY я обрезал дорожку, толку не было.
Mysteo
Oct 23 2017, 06:04
Выпаял всю обвязку полностью, подвел питание и при выключенном модуле потребление 4мА , мне кажется так не должно быть :-( печаль, полная и таких 5 шт плат
QUOTE (Mysteo @ Oct 23 2017, 12:04)
Выпаял всю обвязку полностью, подвел питание и при выключенном модуле потребление 4мА , мне кажется так не должно быть :-( печаль, полная и таких 5 шт плат
видимо что-то не так, у меня потребление всего устройства 1.8мА, из них 700мкА это все остальное помимо GSM-модема. AT+CSCLK=1, CFUN по умолчанию, причем UART в Z-состояние на время спячки не перевожу. Управление через DTR.
Mysteo
Oct 23 2017, 11:49
Ура!!!! Нашел утечку, там на плате распаян MIC29302 стабилизатор с обвязкой, я все ножки его в воздух поднял, а парочку резисторов не выпаял, посчитав что они влиять не должны, так как их концы на MIC шли, а там плата многослойная, они еще кудато подвязаны оказались!
Между землей и выходом Vout там зачем-то 1кОм запаян, буду смотреть нужен ли он по даташиту или нет, мне кажется что не нужен
Больше не буду заказывать платы с aliexpress )) мало того, что с UART наворотили , еще стабилизатор напряжения криво обвязали,
экономия денег вытекла в трату времени )
CADiLO
Oct 23 2017, 12:17
>>>Больше не буду заказывать платы с aliexpress
Я это народу пытаюсь уже несколько лет доказать и все равно наступают на одни и те же грабли.
Андрей190
Oct 26 2017, 07:58
Цитата(Mysteo @ Oct 23 2017, 14:49)
Ура!!!! Нашел утечку, там на плате распаян MIC29302 стабилизатор с обвязкой, я все ножки его в воздух поднял, а парочку резисторов не выпаял, посчитав что они влиять не должны, так как их концы на MIC шли, а там плата многослойная, они еще кудато подвязаны оказались!
Между землей и выходом Vout там зачем-то 1кОм запаян, буду смотреть нужен ли он по даташиту или нет, мне кажется что не нужен
у MIC29302 есть минимальный ток нагрузки - по ДШ 7 мА. если ток ниже, напряжение на выходе будет плавать
Mysteo
Dec 11 2017, 06:33
И правда, значит из-за этого и был тот резистор там, но данный стабилизатор и в даташите на модуль указан.... какой тогда лучше использовать?
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.