首页

 

发表论文

 
自制软件
 
串口通讯
 
VC/C编程
 
网络通讯
 
机器人控制
 
MATLAB
 
   

PalmOS串口通信的一个例子

 



在StartApplication函数中打开串口端口:

UInt gSerialRefNum;

char gSerialBuffer[900]; // should be more than enough for one second of
// data--10 lines @ 80 chars per line

static Boolean StartApplication(void)
{
Err err;
err = SysLibFind("Serial Library", &gSerialRefNum);
ErrNonFatalDisplayIf(err != 0, "Can't find serial library");
err = SerOpen(gSerialRefNum, 0, 9600);
if (err != 0) {
if (err == serErrAlreadyOpen) {
FrmAlert(SerialInUseAlert);
SerClose(gSerialRefNum);
} else
FrmAlert(CantopenserialAlert);
return true;
}
err = SerSetReceiveBuffer(gSerialRefNum, gSerialBuffer,
sizeof(gSerialBuffer));
return false;
}


我们自己设计自己的接受缓冲区,这样我们就能收到完整的数据。我们并不想在接收数据时发生数据丢失,所以我们要设置充分够的空间。


在StopApplication函数中,我们关闭端口(在把缓冲区重设为默认值之后)

static void StopApplication(void)
{
// restore the default buffer before closing the serial port
SerSetReceiveBuffer(gSerialRefNum, NULL, 0);
SerClose(gSerialRefNum);
}
ed and displayed:


 
   
 

                                             

转载本站原版内容,请注明作者,并说明来自http://www.gjwtech.com