Mysteo 0 17 октября, 2017 Опубликовано 17 октября, 2017 · Жалоба Здравствуйте! Подскажите как грамотно отослать данные по UART , используется только RX и TX, в самом даташите сказано, что надо отправить любой байт данных и после 100мс отправлять данные. А в appnote сказано , что надо отправлять данные непрерывно, пока не придет ответ от модуля. Чему верить? Использую AT+CSCLK = 2 . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 17 октября, 2017 Опубликовано 17 октября, 2017 · Жалоба Отправить AT несколько раз. Когда получили ОК - перевести модуль на фиксированную скорость. AT+IPR=9600 AT&W Перегружаем модуль и далее уже работаем на фиксированной скорости без всяких задержек. Если модуль усыпляем - то лучше использовать DTR для просыпания. Игра на задержках это баловство для студентов - сделать абы сдать. И если предполагается передача больших объемов данных, или работа на скорости выше чем 9600, то использование RTS/CTS очень рекомендуемо чтобы не терять данные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vit496 0 17 октября, 2017 Опубликовано 17 октября, 2017 · Жалоба Да нормально и без DTR можно работать, чуть дольше только выход из сна AT\r пауза 200 мс AT\r OK затем сразу AT+SLEEP=0\r OK ..... //делаем неспеша, что нужно и опять засыпаем AT+SLEEP=2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 17 октября, 2017 Опубликовано 17 октября, 2017 · Жалоба Можно и так. Но сапог (DTR) в бою надежнее :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 18 октября, 2017 Опубликовано 18 октября, 2017 (изменено) · Жалоба Понял, спасибо большое, а зачем перезагружать модуль если можно просто включить режим AT+CSCLK = 0 ? Скорость у меня 230400 , пока проблем с передачами не было без RTS/CTS, объемы данных до 200килобайт за минуту vit496 У меня так и реализовано, но сделаю для надежности через DTR как велят старожилы Изменено 18 октября, 2017 пользователем Mysteo Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 18 октября, 2017 Опубликовано 18 октября, 2017 · Жалоба Если использовать DTR , то тогда придется применять AT+CSCLK=1 , в таком случае при входящем событии на модуль (звонок либо смс ) в таком случае необходимо отслеждивать вывод UART_RI и пробуждать SIM800 через DTR ? Или при AT+CSCLK = 1 уровень на RI не будет меняться? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 18 октября, 2017 Опубликовано 18 октября, 2017 · Жалоба Если для вас важно входящее событие, то да. Если инициатор само устройство, то игнорируйте. Вам что жалко пару линий портов для большей функциональности???? 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 53 18 октября, 2017 Опубликовано 18 октября, 2017 · Жалоба Вам что жалко пару линий портов для большей функциональности???? Линий портов всегда жалко. Особенно когда функциональности как таковой не добавляется. Прерывание по приему символа в UART при входящем событии ничуть не хуже прерывания по ноге RI. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 18 октября, 2017 Опубликовано 18 октября, 2017 · Жалоба В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vit496 0 19 октября, 2017 Опубликовано 19 октября, 2017 · Жалоба В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать Не молчит. +CRING: VOICE, +CLIP: "+7906211... Все как обычно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 20 октября, 2017 Опубликовано 20 октября, 2017 · Жалоба В режиме сна при clk = 1 уарт вроде как молчит даже при входящем событии, поэтому надо RI использовать Ничего не молчит - все асинхронные сообщения приходят как и должны приходить. Особенность лишь в том, что для того, что-бы что-то ответить на эти сообщения(отослать что-то в модуль) надо по-любому дернуть DTR и подождать 80мс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 20 октября, 2017 Опубликовано 20 октября, 2017 (изменено) · Жалоба Спасибо! потребление около 6 мА в данном режиме, что на 5 мА больше чем в даташите, в чем может быть косяк? Напряжение подавал напрямую, подключение SIM как в даташите, светодиоды все выпаял, согласование UART на транзисторах сделано, но там столько жрать не должно Изменено 20 октября, 2017 пользователем Mysteo Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 20 октября, 2017 Опубликовано 20 октября, 2017 · Жалоба Подпитка по портам где-то осталась. Мы 0.7 мА получали переводя выход UART контроллера в Z состояние. И потом только контролировали RI для просыпания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 20 октября, 2017 Опубликовано 20 октября, 2017 (изменено) · Жалоба Буду разбираться, что то в платке с модулем жрёт, сейчас попробую выпаять транзисторы, согласующие уарт, при clk = 2 и cfun = 0 кушает 3 - 4 мА, ножки которые с МК соединены разорвал толку нет Изменено 20 октября, 2017 пользователем Mysteo Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 20 октября, 2017 Опубликовано 20 октября, 2017 · Жалоба pwrkey часом не навечно на массе? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться