HPC.ru lite - Все форумы
Форум: Программирование для КПК
Тема: Serial Port Support !!!(Проблема)

[Ответить]
si2_job [18.08.2003 13:30] Serial Port Support !!!(Проблема):
Хочу Вкл/OТКЛ DTR на Palm (невыходит)
Открыл порт с помощью new New Serial Manager
SrmOpen(serPortCradleRS232Port /* port */, 38400, /* baud */&portId);
настроил его
baudRate = 38400;
flags = srmSettingsFlagBitsPerChar8|srmSettingsFlagParityOnM | srmSettingsFlagParityEvenM |
srmSettingsFlagStopBits1 | srmSettingsFlagRTSAutoM |srmSettingsFlagCTSAutoM;
ctsTimeout = SysTicksPerSecond() / 2;
paramSize = sizeof(baudRate);
err = SrmControl(portId, srmCtlSetBaudRate, &baudRate,¶mSize);
paramSize = sizeof(flags);
err = SrmControl(portId, srmCtlSetFlags, &flags, ¶mSize);
paramSize = sizeof(ctsTimeout);
err = SrmControl(portId, srmCtlSetCtsTimeout, &ctsTimeout,¶mSize);

Теперь хочу подергать DTR
err = SrmControl(portId, srmCtlSetDTRAsserted, &flags, ¶mSize);
невыходит либо вообще не чего не происходит либо срабатывает ошибка serErrNotSupported

Помогите Please
aidar [15.10.2003 22:25] :
В документации PalmOS 5 на счет srmCtlSetDTRAsserted сказано - дословно :

srmCtlSetDTRAsserted Enabled or disable the DTR signal.
This is not supported by all hardware.

Т.е. это, реальными устройствами не поддерживается. Однако мы, в свое, время разрабатывал прогу для Sony CLIЙ, в целях обмена информацией с одним устройством. И у нас по началу была проблема - просто отсутствовала связь. И тогда мы решили вырубить DTR описанным тобой способом. После чего срабатывала ошибка - serErrNotSupported, но связь была установлена, т.е. обмен заработал. А на ошибку мы не стали обращать внимания.

В общем, несмотря на категоричность первоисточника ( касательно ''This is not supported by all hardware." ) в конечном итоге все зависит от возможностей устройства конкретного производителя. Может на твоем устройстве при отключении DTR, не смотря на ошибку, линия все-таки была отключена? Ты пробовал проверять это с помощью srmCtlGetDTRAsserted?

----------------------------------
a_aidar1980@mail.ru
[Ответить]