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

 
 
> ATMega+внешний модем
dimkadat
сообщение Oct 14 2005, 04:22
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



excl.gif Пришёл утром на работу, а мне говорят ты жил зря!!!
и ставят задачу в наши изделия подключить
контроллер, который через внешний модем, будет сообщать удалённому пользователю, опять же через модем, параметры изделия. Всё бы ничего, но вот как связать модем с МК, не знаю, какой модем лучше,
Помогите кто чем может, ссылками советами
, может кто чего делал пробовал.
сроку месяц дали maniac.gif
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 19)
tobias_ivan
сообщение Oct 14 2005, 05:27
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 150
Регистрация: 7-09-05
Из: Россия, г.Новороссийск
Пользователь №: 8 321



Да, любой подойдет!
Стыковку сделайте на преобразователе уровней TTL->+-12V: max232 или ей подобные (ad232, st232).
Изучите AT-команды.
На практике посмотрите как происходит связь между ПК и модемом при соединении удаленки. ДЛя этого на ком-порт повесте просмотрщик (например, PortMon, или другие: тут на форуме обсуждали такие программы), в нем увидете какие команды (а самое главное последовательность байт) передает программа ПК модему. Ну и передачу файла можно глянуть.
Кстати для начала можно все отработать именно на ПК. Напишите эмулятор Вашего контроллера и Вам станет ясно что и как из программы переносить в него.
Удачи!
Go to the top of the page
 
+Quote Post
Igor26
сообщение Oct 14 2005, 05:43
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата(tobias_ivan @ Oct 14 2005, 08:27)
Да, любой подойдет!
Стыковку сделайте на преобразователе уровней TTL->+-12V: max232 или ей подобные (ad232, st232).
Изучите AT-команды.
На практике посмотрите как происходит связь между ПК и модемом при соединении удаленки. ДЛя этого на ком-порт повесте просмотрщик (например, PortMon, или другие: тут на форуме обсуждали такие программы), в нем увидете какие команды (а самое главное последовательность байт) передает программа ПК модему. Ну и передачу файла можно глянуть.
Кстати для начала можно все отработать именно на ПК. Напишите эмулятор Вашего контроллера и Вам станет ясно что и как из программы переносить в него.
Удачи!
*

Посмотрите здесь, может пригодится. http://book.itep.ru/10/at_109.htm
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Oct 14 2005, 05:48
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



я так понимаю, стандарт RS232 синхронный. Монитор СОМ порта есть, преобразование уровней тож ясно, АТ команды понятно.

задача в реалии

Где то, например в деревне Забодаево, есть радивещательный передатчик (в необслуживаемом режиме, но с телефоном) , а в областном центре Небодаево на РТПЦ, тож есть телефон, и комп, пришёл ну работу инженер Сидоров, нажал на кнопки - комп позвонил в Забодаево педатчику, а тот сообщил ему пару параметров. и всем хорошо.

я нашёл вот это http://yumi.ziet.zhitomir.ua/ct/hardware/modem_tut/gl3.shtml


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post
Igor26
сообщение Oct 14 2005, 06:06
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата(dimkadat @ Oct 14 2005, 08:48)
я так понимаю, стандарт RS232 синхронный.  Монитор СОМ порта есть, преобразование уровней тож ясно, АТ команды понятно.

задача в реалии

Где то, например в деревне Забодаево, есть радивещательный передатчик (в необслуживаемом режиме, но с телефоном) , а в областном центре Небодаево на РТПЦ, тож есть телефон, и комп, пришёл ну работу инженер Сидоров, нажал на кнопки - комп позвонил в Забодаево педатчику, а тот сообщил ему пару параметров. и всем хорошо.

я нашёл вот это http://yumi.ziet.zhitomir.ua/ct/hardware/modem_tut/gl3.shtml
*

RS232 асинхронный стандарт! Для аппаратной стыковки модема с МК MAX232 скорее всего будет недостаточно, мало у ней входов/выходов. Посмотрите, что есть у MAXIMа для реализации полного RS232.
Go to the top of the page
 
+Quote Post
Pyku_He_oTTyda
сообщение Oct 14 2005, 06:10
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 751
Регистрация: 4-08-05
Из: Великие Луки
Пользователь №: 7 360



Для полного СОМ есть и у AD микросхемы


--------------------
Андрей Смирнов
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Oct 14 2005, 06:41
Сообщение #7


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



По поводу модемов - посмотрите на это
http://www.efo.ru/doc/MultiTech/MultiTech.pl?594
очень хорошо для embedded подходят.
Go to the top of the page
 
+Quote Post
MicronSys
сообщение Oct 14 2005, 06:51
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 12-05-05
Пользователь №: 4 946



Цитата(Igor26 @ Oct 14 2005, 09:06)
Цитата(dimkadat @ Oct 14 2005, 08:48)
я так понимаю, стандарт RS232 синхронный.  Монитор СОМ порта есть, преобразование уровней тож ясно, АТ команды понятно.

задача в реалии

Где то, например в деревне Забодаево, есть радивещательный передатчик (в необслуживаемом режиме, но с телефоном) , а в областном центре Небодаево на РТПЦ, тож есть телефон, и комп, пришёл ну работу инженер Сидоров, нажал на кнопки - комп позвонил в Забодаево педатчику, а тот сообщил ему пару параметров. и всем хорошо.

я нашёл вот это http://yumi.ziet.zhitomir.ua/ct/hardware/modem_tut/gl3.shtml
*

RS232 асинхронный стандарт! Для аппаратной стыковки модема с МК MAX232 скорее всего будет недостаточно, мало у ней входов/выходов. Посмотрите, что есть у MAXIMа для реализации полного RS232.
*



Зачем реализововать полный RS232 работает и при RX TX
больше не чего не надо
ну типа RTS DTR и т.д. и т.п.

( Говорю так по тому что есть опыт такой разроботки и она работает )

Atmega 8 + st232 + Zyxel 1496E дома стоит
Atmega 8 + st232 + Siemens C45 типа в поле
Работа ГУТ a14.gif
Go to the top of the page
 
+Quote Post
GrayCat
сообщение Oct 14 2005, 13:27
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 263
Регистрация: 7-10-05
Из: UA
Пользователь №: 9 342



Действительно, для небыстрой пересылки маленьких пакетов можно обойтись только линиями RX, TX. Хотя, очень желательно еще линию DCD завести, чтобы всегда "независимо" знать, что связь есть. Прочие RTS-CTS, DTR-DCR нужны когда пересылаются большие блоки данных, не влазящие в буфера.

Базовый набор команд у всех модемов более/менее одинаков (называют их Hayes-совместимыми).

Инициализация: "ATZ"
Набор номера: "ATD1234567"
на вызываемом модеме выдается "RING"
говоришь ему "Поднять трубу": "ATA"
модемы договариваются, соединяются...
...выдают слово "CONNECT чего-то там с чем-то там"
ВСЕ, соединение установлено, пихаемые в порт байтики появляются с другой стороны, и наоборот wink.gif
Чтобы прекратить связь: "+++ATH"

Конечно, нужно предусмотреть обработку неудач соединения ("NO DIAL TONE", "BUSY", "NO CARRIER" и т.п.).

Всяческие настройки модемов обычно можно сделать предварительно, затем записать их им в память.

Подробнее -- см. в полных инструкциях на модемы. В свое время очень хорошо были расписаны, например, модемы US Robotics.


--------------------
Gray©at
Go to the top of the page
 
+Quote Post
G}{OST
сообщение Oct 14 2005, 13:39
Сообщение #10


Участник
*

Группа: Новичок
Сообщений: 48
Регистрация: 6-05-05
Пользователь №: 4 784



Кстати, по поводу протокола могу посоветовать неплохой апнот с атмела:
http://www.atmel.com/dyn/resources/prod_do...nts/doc1472.pdf
http://www.atmel.com/dyn/resources/prod_documents/AVR350.zip
Цитата
AVR350: XmodemCRC Receive Utility for AVR  (7 pages, revision C, updated 09/05)
The Xmodem protocol was created years ago as a simple means of having two computers talk to each other. With its half-duplex mode of operation, 128-byte packets, ACK/NACK responses and CRC data checking, the Xmodem has found its way into many applications.


--------------------
cul8r!
* #ru_embedded - эмбеддерский чат
Go to the top of the page
 
+Quote Post
G}{OST
сообщение Oct 14 2005, 13:48
Сообщение #11


Участник
*

Группа: Новичок
Сообщений: 48
Регистрация: 6-05-05
Пользователь №: 4 784



Цитата(Igor26 @ Oct 14 2005, 09:43)
Посмотрите здесь, может пригодится. http://book.itep.ru/10/at_109.htm
*

Спасибо за ссылку, это просто чудо-книга w00t.gif


--------------------
cul8r!
* #ru_embedded - эмбеддерский чат
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Oct 17 2005, 01:59
Сообщение #12


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



Параметров действительно не много, байт 20. скорость 1200 б/с подойдёт.
Значит , я так понимаю достаточно RX TX линий, асинхронный режим. Соеденяется через MAX232 При этом через определённые промежутки времени модем нужно ресетиь, для защиты от сбоев по питанию. Причём аппаратно.
Mega 128 работает как с обычным UARTом? Только АТ командами, при этом , если самому контроллеру звонить не нужно всё упрощается:
      |
      | line
      v
---------------¬
| модем       |
L---------------        TX mode
   ^          |
    | data  | вызов
    |         v
---------------¬
| MK            |
L---------------

________________________________
      |
      |
      v
---------------¬
| модем       |
L---------------         Init mode
   ^        ^
    | init   | reset
    |        |
---------------¬
| MK            |
L---------------
В общих чертах?


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post
MicronSys
сообщение Oct 17 2005, 07:22
Сообщение #13


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 12-05-05
Пользователь №: 4 946



Цитата(GrayCat @ Oct 14 2005, 16:27)
Действительно, для небыстрой пересылки маленьких пакетов можно обойтись только линиями RX, TX. Хотя, очень желательно еще линию DCD завести, чтобы всегда "независимо" знать, что связь есть. Прочие RTS-CTS, DTR-DCR нужны когда пересылаются большие блоки данных, не влазящие в буфера.

Базовый набор команд у всех модемов более/менее одинаков (называют их Hayes-совместимыми).

Инициализация: "ATZ"
Набор номера: "ATD1234567"
на вызываемом модеме выдается  "RING"
говоришь ему "Поднять трубу": "ATA"
модемы договариваются, соединяются...
...выдают слово "CONNECT чего-то там с чем-то там"
ВСЕ, соединение установлено, пихаемые в порт байтики появляются с другой стороны, и наоборот  wink.gif
Чтобы прекратить связь: "+++ATH"

Конечно, нужно предусмотреть обработку неудач соединения ("NO DIAL TONE",
"BUSY", "NO CARRIER" и т.п.).



Всяческие настройки модемов обычно можно сделать предварительно, затем записать их им в память.

Подробнее -- см. в полных инструкциях на модемы. В свое время очень хорошо были расписаны, например, модемы US Robotics.
*



Я советую послать строку инита.
ATE0V0
Тогда модем будет отвечать цифр. командами
CONNECT - 1
RING -2
NO DIALTONE -6
BUSY - 7
Тогда будет проще

void Tel_Ok(void)
{
index_in-- ;
if (index_in>1) return;
switch (buffer_in[0])
{

case '1':// CONNECT

break;

case '2':// RING

break;

case '6':// NO DIALTONE

break;

case '7':// BUSY

break;

}
}
cheers.gif
Успехов
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Dec 16 2005, 07:40
Сообщение #14


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



Извиняюсь за возвращение темы, но есть проблемма, стык МК<-> модем не работает.....
модем не принимает комманды от МК. Причём, если соеденить их через ПК (в протеусе соеденив СОМ1 и СОМ2) то всё превосходно работает....
В развязке стоит МАХ 232СРЕ , может в ней грабли? Модем Акорп 56000. cranky.gif


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post
MicronSys
сообщение Dec 16 2005, 07:56
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 12-05-05
Пользователь №: 4 946



Цитата(dimkadat @ Dec 16 2005, 11:40) *
Извиняюсь за возвращение темы, но есть проблемма, стык МК<-> модем не работает.....
модем не принимает комманды от МК. Причём, если соеденить их через ПК (в протеусе соеденив СОМ1 и СОМ2) то всё превосходно работает....
В развязке стоит МАХ 232СРЕ , может в ней грабли? Модем Акорп 56000. cranky.gif


Схему в студию !!! smile3046.gif
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Dec 16 2005, 08:16
Сообщение #16


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



Типа того, изиняйте за качество
"Вот так должно быть по лучшее"

Сообщение отредактировал dimkadat - Dec 19 2005, 02:48


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post
MicronSys
сообщение Dec 16 2005, 08:23
Сообщение #17


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 12-05-05
Пользователь №: 4 946



Не ф...га не видно можно повторить только качество UP sad.gif
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Dec 19 2005, 03:43
Сообщение #18


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



Ну вот так....
Прикрепленное изображение


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post
afe
сообщение Jan 26 2006, 01:39
Сообщение #19


Частый гость
**

Группа: Свой
Сообщений: 94
Регистрация: 4-05-05
Из: Харьков
Пользователь №: 4 740



Цитата(GrayCat @ Oct 14 2005, 15:27) *
Действительно, для небыстрой пересылки маленьких пакетов можно обойтись только линиями RX, TX. Хотя, очень желательно еще линию DCD завести, чтобы всегда "независимо" знать, что связь есть. Прочие RTS-CTS, DTR-DCR нужны когда пересылаются большие блоки данных, не влазящие в буфера.

Базовый набор команд у всех модемов более/менее одинаков (называют их Hayes-совместимыми).

Инициализация: "ATZ"
Набор номера: "ATD1234567"
на вызываемом модеме выдается "RING"
говоришь ему "Поднять трубу": "ATA"
модемы договариваются, соединяются...
...выдают слово "CONNECT чего-то там с чем-то там"
ВСЕ, соединение установлено, пихаемые в порт байтики появляются с другой стороны, и наоборот
Чтобы прекратить связь: "+++ATH"


А надежней DTR рубить связь, ибо для "+++" паузу определенную нужно выдерживать между плюсами ...

Цитата
Конечно, нужно предусмотреть обработку неудач соединения ("NO DIAL TONE", "BUSY", "NO CARRIER" и т.п.).


ATV0 и можно цифры разбирать вместо строк.

Рекомендую мануал для модемов Hayes-совместимых а в часности Rockwell (Conexant) чипсет:
htp://www.vector.kharkov.ua/new/img_picsupport_info.php?id=10&download=1

Цитата
Всяческие настройки модемов обычно можно сделать предварительно, затем записать их им в память.

Подробнее -- см. в полных инструкциях на модемы. В свое время очень хорошо были расписаны, например, модемы US Robotics.


--------------------
SY AfE
Go to the top of the page
 
+Quote Post
dimkadat
сообщение Jan 26 2006, 07:16
Сообщение #20


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 14-10-05
Пользователь №: 9 622



Спасибо всем! устройство рождено, испытано и готовится а производство. Модемы использовал зухель ОМНИ.

"А надежней DTR рубить связь, ибо для "+++" паузу определенную нужно выдерживать между плюсами ...
"

Да, работает на порядок проще и надёжнее.


--------------------
С уважением Dimka Dat
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 09:49
Рейтинг@Mail.ru


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