Форум: "WinAPI";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];
ВнизDelphi ,сотовый телефон и AT команды Найти похожие ветки
← →
VladSel © (2007-04-09 08:45) [0]Народ подскажите пожалуйста как настроить подключение телефона siemens к компу через COM порт и работать (посылать АТ команды) из Delphi.
Использую Delphi 7, компонент для работы с COM портом (TComm или TBComPort (19200, Parity=None, StopBits=1)), кабель подключен с COM1.
Контролирую работу программой — Serial Monitor.
Посылаю АТ команду (любую) из Delphi и никакой реакции.
Посылаю эти же команды из HyperTerminal — телефон реагирует как и должен (есть ответные сообщения).
Большая просьба если кто знаком с подобным киньте кусок исходников — там где настраивается соединение и что-нибудь отсылается на телефончик.
Заранее огромное спасибо за помощь.
← →
Сергей М. © (2007-04-09 08:48) [1]Любая AT-команда должна сопровождаться постфиксом <CR> (код символа возврата каретки)
← →
Чапаев © (2007-04-09 09:11) [2]Ставишь Siemens Mobile Phone Manager, по логам смотришь, что комп посылает телефону. Хочется поиграться -- переходишь в тамошнюю консоль и отправляешь что заблагорассудится.
← →
VladSel © (2007-04-10 03:33) [3]Siemens Mobile Phone Manager мне не нужен, мне нужно разобраться как работать с телефончиком самому, из своей проги. Я меня есть другая подобная програмка, для siemens, есть монитор COM порта, я запускаю монитор и запускаю программку, она выполняет какие-то команды (их видно в мониторе), затем я запускаю свою прогу и посылаю эти же команды (точно-также, один в один) - проверял монитором, но возможно что-то не так (мои предположения) что толи не та скорость, (хотя я её пробовал разную), может что-то с DRT, RTS, или ещё с чем-то, Поэтому и спрашиваю может кто-то сталкивался с подобной проблемой, киньте код того места где настраивается подключение, засылается любая командочка и как обзываются используемые компоненты для работы с COM портом.
← →
VladSel © (2007-04-10 09:40) [4]Вот мой не рабочий пример:
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
begin
Comm1.DeviceName:="Com1";
Comm1.Databits:=TDatabits(da8);
Comm1.BaudRate:=TBaudrate(br19200);
Comm1.FlowControl:=TFlowControl(fcNone);
Comm1.Parity:=TParity(paNone);
Comm1.Stopbits:=TStopbits(sb10);
Comm1.Open;
Comm1.SetDTRState(true);
s:="ATE0"+#13;
Comm1.Write(s[1],length(s));
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Comm1.Close;
end;
← →
Pattern (2007-04-10 11:10) [5]Используй компаненты CPort310 или TMS ASync32.
В любом случае, отсылается команда через функцию Write (или ей подобной) с добавлением #13 (или #13#10 - везде по разному). Чтобы получить ответ от порта, нужно считать ответ через Read. Впрочем, если скачаешь компаненты, там есть и маны и примеры, думаю разберёшься.
← →
DVM © (2007-04-10 14:45) [6]Есть такая прога с исходниками на делфи FMA. В ней можно и поглядеть.
← →
Боб (2007-04-10 15:11) [7]Работал с С-35, использовал компоненту VSSCOMM32
Была проблема : если сразу после старта (StartComm)
попытаться загнать в порт чего-нибуть, ничего не получалась.
Поставил задержку(на разных компах разная, я ставил до 0.5 сек) - все ОК.
Вообще эта проблема портовых дел виндовоза (я так думаю).
Скорость жестко 19200, хотя в "линии" будет жестко 9600
парити = none
stop bit = 1
Len = 8
Вот моя ини-строка :
"AT&FE0V1&D2&C1Q0S12=50S0=0B29"+#13 (#10 не нужна)
Что есть что не помню, а B29 - типа "протокол" GSM-модема
Best regards
← →
VladSel © (2007-04-11 01:25) [8]Спасибо всем за помощь, просто надо было глянуть что лежит в телефончике после посылки команды
← →
S@shka © (2007-04-11 10:31) [9]Есть самописный Юнит для работы с Siemens 35 серии
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 1.945 c