| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > Motorola C650 как usb modem |
| Автор: urinderiar 27.5.2006, 01:54 | ||
| Всем привет. Есть следующая проблема. Под FreeBSD 5.3 телефон Mot C650 работая в режиме модема не отвечает на АТ команды. Пытаюсь послать "AT"(для примера), должен ответить "OK", ответа жду по select. Результат - молчание. Вот тестовый код:
Результат работы кода - выход по "таймауту". |
| Автор: bilbobagginz 29.5.2006, 10:52 |
| a вызовы cfsetispeed(), tcsetattr() - что возвращают ? нолик или чаво другое ? пока. |
| Автор: urinderiar 3.6.2006, 19:28 |
| bilbobagginz, cfsetispeed() возвращает ноль, а вот tcsetattr() возвращает -1, ошибка - "Invalid argument". |
| Автор: GrayCardinal 3.6.2006, 20:07 |
| На сколько я знаю команды модема, там "\r\n" Должно быть в конце. Правда эт для комовских, но думаю в данном случае аналогично. Тупо нужен конец строки. Т.е. "AT\r\n" (0x0D 0x0A в конец). Да, и что за "AT", может все-таки "ATZ" ? |
| Автор: urinderiar 4.6.2006, 01:43 | ||
Здесь ступил - забыл вызвать cfsetospeed(). GrayCardinal, Попробовал отослать "AT\r\n", "ATZ\r\n" результат тот же. Таймаут. |
| Автор: GrayCardinal 4.6.2006, 05:44 |
| У меня по тайм-ауту выходит только если модем не включен. Если включен, и "ATZ\r\n" - начинает пищать что готов. Правда возвращает он не "OK" а "ATZ\r\n" и второй раз подряд если запускать то уже не пикает. Я через /dev/ttyS1 пробую ;) |
| Автор: urinderiar 4.6.2006, 14:39 | ||
GrayCardinal, Заработало, на "ATZ\r\n" возвращает "ATZ\r\n OK". Благодарю за помощь.
|
| Автор: GrayCardinal 5.6.2006, 05:16 |
| urinderiar, Да завсегда пожалуйста. |