Hi developers,
I`m trying to make serial communication between
palm and PC, but the words sent by palm are received
in PC (hyperterminal) with differents characters. Part
of the code is presented below:
static Err OpenSerial(void)
{
Err err;
UInt32 taxa=9600;
SerSettingsType settings;
/* UInt16 settingssize = sizeof(settings); */
err = SysLibFind("Serial Library", &refNum);
if(err==0)
{
err = SerOpen(refNum, 0, taxa);
switch (err) {
case errNone:
break;
case serErrAlreadyOpen:
SerClose(refNum);
FrmAlert(SerialBusyAlert);
return err;
break;
default:
FrmAlert(SerialOpenAlert);
return err;
break;
}
}
gConnected = true;
SerReceiveFlush(refNum, 100);
settings.baudRate=taxa;
settings.flags = 0;
settings.flags = serSettingsFlagBitsPerChar8 |
serSettingsFlagStopBits1;
SerSetSettings(refNum, &settings);
return err;
}
static void WriteSerial(void)
{
Err error;
FormType *form = FrmGetActiveForm();
FieldType *field;
MemHandle h;
Char *s;
if (gConnected == false) return;
field = FrmGetObjectPtr(form,
FrmGetObjectIndex(form, MainNameField));
h = FldGetTextHandle(field);
if (h) {
s = MemHandleLock((void *)h);
SerSend(refNum, s, StrLen(s), &error);
if (error)
FrmAlert(SerialSendAlert);
MemHandleUnlock((void *)h);
}
}
static void CloseSerial(void)
{
Err error;
/* error = SerSendWait(refNum, 1000); */
/* ErrNonFatalDisplayIf(error == serErrBadPort,
"SrmClose: bad port"); */
/* if (error == serErrTimeOut) */
/* FrmAlert(SerialTimeoutAlert); */
SerClose(refNum);
gConnected = false;
}
How can I solve this problem?
Mr. Paulo Regis
------------------------------------------------------------
Mensagem enviada usando WebMail mantido por FortalNet ISP.
http://www.fortalnet.com.br/
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/