各位單片機大神:
如題,下列程序為RS485通信程序,其中 *len=RS485_RX_CNT; //記錄本次數(shù)據(jù)長度 該怎么理解?
一起探討、一起進步,謝謝
//RS485查詢接收到的數(shù)據(jù)
//buf:接收緩存首地址
//len:讀到的數(shù)據(jù)長度
void RS485_Receive_Data(u8 *buf,u8 *len)
{
u8 rxlen=RS485_RX_CNT;
u8 i=0;
*len=0; //默認為0
delay_ms(10); //等待10ms,連續(xù)超過10ms沒有接收到一個數(shù)據(jù),則認為接收結(jié)束
if(rxlen==RS485_RX_CNT&&rxlen)//接收到了數(shù)據(jù),且接收完成了
{
for(i=0;i<rxlen;i++)
{
buf[ i]=RS485_RX_BUF[ i]; } *len=RS485_RX_CNT; //記錄本次數(shù)據(jù)長度 RS485_RX_CNT=0; //清零 }}
|