|
|
  |
SIM300C+MEGA16 USART-Problem, Не стабильная работа Мега16 по USART c модемом |
|
|
|
Mar 19 2007, 20:49
|
Группа: Новичок
Сообщений: 12
Регистрация: 10-01-07
Пользователь №: 24 280

|
Здравствуйте товарищи !
Имеется Мега16 (8MHz, 5В через LM7805 от ATX 12B). К Меге, по USART, подключен SIM300C GSM-модем. (9600, 8-N-1). Сигналы CTS-RTS на модеме закорочены.
Проблема соостоит в нестабильной работе USART. Уверенность в том, что виною именно USART дает то обстоятельство, что поотдельности и модем и Мега работают отлично (с компом, через преобразователь уровней на MAX232, 9600, 8-N-1). Имеет также место FrameError на Меге при работе с модемом.
В чем, собственно, состоит нестабильность ? Из 10-ти звонков (ATDxxxxxxxxxxx;) может прити 1-2. Иногда не приходит вообще.
Кроме-как подвесить pool-up-резисторы на RX, TX в голову ничего не приходит.
Буду благодарен за любой дельный совет.
Заранее благодарен!
|
|
|
|
|
Mar 19 2007, 21:10
|

Местный
  
Группа: Свой
Сообщений: 425
Регистрация: 17-07-06
Из: Россия МО
Пользователь №: 18 877

|
Цитата Имеется Мега16 (8MHz, 5В через LM7805 от ATX 12B). 5В для SIM300 много. Нужно хотя бы 3.3В не больше. Цитата Сигналы CTS-RTS на модеме закорочены. Коротить можно только RTS. Выходной сигнал CTS нельзя. Напрягаешь модуль. Цитата В чем, собственно, состоит нестабильность ? Из 10-ти звонков (ATDxxxxxxxxxxx;) может прити 1-2. Если на 10 просто "АТ" получишь 10 "ОК", UART работает нормально. Проблемма может быть в другом.
|
|
|
|
|
Mar 21 2007, 11:13
|
Участник

Группа: Новичок
Сообщений: 60
Регистрация: 7-03-07
Из: Калуга
Пользователь №: 25 949

|
У меня такая же связка, то только AtMega16L! Все работает превосходно в плане USART. Мега работает от того же питания, что и модуль. Схема такая: Rx(AtMega)---[470]---Tx(Sim300c) Tx(AtMega)---[470]---Rx(Sim300c) Резистор 470 Ом необходим из своих соображений. Кварц то же 8Мгц. Работаю на 19200. В принципе, работает до 115200 - проблем не замечено. Вообще, большинство глюков из-за наводок РЧ во время передачи. Либо из-за просадок питания.
|
|
|
|
|
Mar 22 2007, 11:22
|
Группа: Новичок
Сообщений: 12
Регистрация: 10-01-07
Пользователь №: 24 280

|
Цитата(lewchenko @ Mar 21 2007, 10:13)  У меня такая же связка, то только AtMega16L! Все работает превосходно в плане USART. Мега работает от того же питания, что и модуль. Схема такая: Rx(AtMega)---[470]---Tx(Sim300c) Tx(AtMega)---[470]---Rx(Sim300c) Резистор 470 Ом необходим из своих соображений. Кварц то же 8Мгц. Работаю на 19200. В принципе, работает до 115200 - проблем не замечено. Вообще, большинство глюков из-за наводок РЧ во время передачи. Либо из-за просадок питания. 1.Как посмотреть просадки питания ? 2.Поделитесь настройками фузов CKOPT, CKSEL, SUT.
|
|
|
|
|
Mar 30 2007, 01:39
|
Участник

Группа: Новичок
Сообщений: 60
Регистрация: 7-03-07
Из: Калуга
Пользователь №: 25 949

|
Цитата(svkostik @ Mar 22 2007, 12:22)  1.Как посмотреть просадки питания ? 2.Поделитесь настройками фузов CKOPT, CKSEL, SUT. 1. Осциллографом. 2. Зависят от обвязки проца. Например, кварц 8МГц: CKOPT=1, CKSEL3..1=1. (Для PonyProg Галка=0!)
|
|
|
|
|
Feb 7 2008, 11:40
|
Участник

Группа: Участник
Сообщений: 15
Регистрация: 22-06-07
Пользователь №: 28 620

|
Цитата(CADiLO @ Mar 20 2007, 18:00)  3. Для работы с АТ командами достаточно RX, TX - остальное в воздухе. 4. Полный последовательный интерфейс нужен только при режиме FAX или DATA - тогда контролируем CTS. Вы хотите сказать что при работе с АТ командами(например при конфигурировании модуля и т.д.)возможно работать только по 2 линиям RX и TX?а при работе GPRS нужно задействовать полный протокол или какие то линии опустить?Я понял что линии RTS и CTS при передаче по GPRS нужно обрабатывть обязательно,а другие?Значит при стыковке модуля с МК AVR, следует использовать его аппаратный UART + дополнительные порты для линий RTS и CTS и их обрабатывать в ручную? Спасибо заранее!!!
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|