热度 17
2012-2-27 09:12
1010 次阅读|
0 个评论
在第三个部分的串口到以太网,我们将看看数据接到以太网的部份。因为我们不使用中断任何以太网的数据的方法,我们基本上需要检查是否有任何以太网数据存储在收发时的缓冲区。如果有数据在這個RX缓冲区時,我们会印出以太网的数据。第一步是先在内部使用getSn_RX_RSR的功能,替RX为缓冲区检查数据的数目。在RX缓冲区,这个函数会申报字节数的。如果这个值大于0,这意味着您可以使用recv函数来获取数据。 void lan_to_rs232() { uint16 xdata chk_length; // length checker uint16 xdata rcv_length; // length of data received uint16 xdata idx; // for loop index chk_length = getSn_RX_RSR(0); // get length of data in lan receive buffer if(chk_length 0) // check if there is data in lan receive buffer { if(chk_length MAX_BUF_SIZE) chk_length = MAX_BUF_SIZE; //check if length of lan received buffer is more than LAN_RX_BUF rcv_length = recv(0,LAN_RX_BUF,chk_length); //receive data for(idx = 0; idx rcv_length; idx++) { PutByte(LAN_RX_BUF ); // print result } } } 我希望你喜欢! 如果您有什么疑问请直接留言也可以登录我们的官网: http://www.wiznettechnology.cn 或者来信: Tel: 86-10-84539974(转166),QQ:2464237212,邮箱:wiznetbj@wiznettechnology.com,联系人:Lily Zhang ,谢谢!