Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Имеется ли библиотека для работы с |
Автор: barin_Student 24.4.2008, 09:12 |
Всем форумчанам , привет... Если вдруг кто видел где лежит данный вид информации... ил кто сам писал управление АТ командами для модема Siemens MC35i , прошу вашей помощи , помогите... Проблема в том что ,я отписал посылку СМС и тд , но когда тестируешься в малых объемах все тути фрути , но когда в больших объемах тестируешься , постоянно вылетает , заного переписывать уже надоело . С удовольствием приму помощь от тех кто написал уже. Могу и сам на некоторые вопросы ответить. |
Автор: ksili 24.4.2008, 09:18 |
Я писал на С++ в Билдере. Никакой библиотеки не использовал. Просто слал команды в ком-порт и читал оттуда ответ. Описание команд в pdf-е на сайте производителя. Чтобы разобраться с смс-ками в формате PDU, использовал суперскую утилитку pduspy. Ну и юзал конечно монитор порта (PortMon от Марка Руссиновича). |
Автор: powerOn 24.4.2008, 09:24 |
Причём тут Java? |
Автор: barin_Student 24.4.2008, 09:25 | ||
я тоже самое далаю , могу пример скинуть , вопрос , а вы не можете привести список команд , которые вы использовали для инициализации? ![]()
При то что именно на яве я бы хотел увидить готовое решение. Я могу кинуть то что я реализовал , я думаю там туча ошибок... |
Автор: ksili 24.4.2008, 09:38 |
ATZ (сброс всех настроек на default) AT+CLIP=1 (чтоб потом можно было мониторить состояние звонка командой AT+CLCC) AT+CNMI=1,0,0,1,1 (чтобы пришедшие смс-ки сразу вываливались в ком-порт) |
Автор: barin_Student 24.4.2008, 09:43 | ||
this.write - пишет в ком порт... неужели вы ничаго из этого для инициализации не использовали? |
Автор: ksili 24.4.2008, 09:46 |
На кой всё это надо? Тем более с вопросиками! Они же ничего не настраивают, а возвращают текущее значение настройки Сделайте ATZ после включения. Если после этого что-то не так работает, ищите нужную команду и добавляйте. По большинству там всё по-умолчанию годится. |
Автор: barin_Student 24.4.2008, 09:50 |
А можете сишный код привести запрос и ответ, например для отправки СМС, как вы работали с потоками ввода и вывода? ![]() |
Автор: barin_Student 24.4.2008, 10:14 |
Нет вы меня не поняли команды и все остальное я знаю, для отправки СМС я : at+cmgf=1 (в текстовый вид ) at+cmgs =(номер телефона)(ENTER)\ >[text] (ctrl + z) У меня есть ряд вопросов , даже я скажу что очень многа : 1) у меня если кто то (не моя программа) захватывает ком порт, а я начинаю посылать команды , я уже не могу рестартоваться , и это плохо... Потоки ввода и вывода , это как рас то что вы посылаете и принимаете с ком порта. и ТД , мне сама суть постоянного парсинга команд не нравиться , может кто то как нибудь более практичнее реализовал.? |
Автор: ksili 24.4.2008, 10:20 | ||
А как это вы их посылаете? По-моему это невозможно. ну или по-крайней мере надо оччень постараться, чтобы это сделать. А вы вообще под чем? Win XP? А чего там сложного? После получения ответа на команду надо только посмотреть, что там на конце. Если OK, то всё ОК, если ERROR - то ошибка. Не так уж много команд возвращают ещё что-то другое |
Автор: barin_Student 24.4.2008, 10:43 |
+ cmgs (номер порядковый) - ответ на посылку сообщения.. + cmgs error [1- 512] - ответ на ошибку at+cmgl=REC UNREAD - вот на такую команду совсем другой ответ... Вариантов ответа очень многа, если конечно только посылать СМС , то тогда все в меньшем размере. Ну ладно счас еще погуглю , может быть есть специализированные форумы по этому вопросу.. |
Автор: ksili 24.4.2008, 10:50 |
кажеся ещё какой-то командой можно настроить формат ответов. OK и ERROR - это по-умолчанию. А кажется можно сделать, чтобы в ответ приходили цифры. 0 вместо OK, 1 - вместо ERROR, и т.д. Но всё равно проще уже наверно не будет. Какое бы ты средство не использовал, всё равно весь ответ в нём будет содержаться в одной строке (массиве, свойстве типа строка...), а её опять же надо будет парсить. |
Автор: barin_Student 25.4.2008, 08:53 |
Вот вопрос по модему: на команду at+cmgd=(номер смски , которую мне надо удалить) , модем отвечает : +СMS ERROR :512 (в ошибках сказано -user abort), что это может быть? ПС:пина нет!. |
Автор: ksili 25.4.2008, 10:50 |
Наверно ты что-то шлёшь в порт до того, как выполнится эта команда. Делай после её посылки небольшую паузу |
Автор: barin_Student 25.4.2008, 11:19 |
ок , счас попробую. |