主题:ETR232i中串口通信中有关定义

  共有30699人关注过本帖    
longquan
1楼


ETR232i中串口通信中有关定义  发帖心情 Post By:2007-11-26 10:52:00   [只看该作者]

int PutOutputData( char abyte )
int PutInputData( char abyte )
int GetInputData( )
int GetOutputData( )
四个函数中有部分的定义不是很清楚,
如int PutOutputData( char abyte )
{
   unsigned int Idx;

   if( OBufGetIdx == 0 ) Idx = BUF_SIZE - 1;
   else                  Idx = OBufGetIdx - 1;

   if( OBufPutIdx == Idx ) return -1;
   OutputBuf[OBufPutIdx] = abyte;
   OBufPutIdx = ( OBufPutIdx + 1 ) % BUF_SIZE;
   return 0;
}
其中OBufGetIdx、OBufPutIdx是定义初始化为0,两个变量它们是什么意义?

  单帖管理 | 引用 | 回复 回到顶部
zhl
2楼


  发帖心情 Post By:2007-11-26 11:27:00   [只看该作者]

串口收发的数据放入环形的BUFFER中, GetIdx 和PutIdx用于管理环形Buffer用的。其中GetIdx记录从Buffer取数的Idx, PutIdx记录数据放入Buffer的Idx。

  单帖管理 | 引用 | 回复 回到顶部

返回首页

ETR232i中串口通信中有关定义

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: