jacky-wx

发送模块说明
使用UDP协议,通过RMII网线上传数据到PC端
参考如下网络协议,在传输的数据前面需要添加必要的网络首部,以及最后添加CRC32校验

 



MAC头

 


IP头

 


UDP头

 

总之,一个最小UDP网络包内容如下(64 byte)

 

注意:CRC32 是从MAC头开始校验,一直到用户数据结束,发送时候先发低字节,最后发高字节;
IP头里面的首部校验和必须计算准确,否则网络助手调试工具会抓取不到数据包;
UDP校验和可以为0;
在MAC头发送之前,需要发送一个前导码0x00000000_55_55_55_55_55_55_55_5d(最后这个5d也可能是d5);
整个网络包发送接口部分,进行8bit--> 2bit转化的时候,先发低2位,最后发送高2位(例如发送0x81,发送过程应该是 2’b01 --> 2’b00 --> 2’b00 --> 2’b10);
因为UDP用户部分数据长度为18 ~ 1472 byte,所以,当少于18字节的时候,需要补0;当多于1472字节时候,自动丢弃;

分类:

技术点:

相关文章:

  • 2021-12-02
  • 2021-07-30
  • 2021-12-29
  • 2021-08-09
  • 2021-11-19
  • 2021-05-12
  • 2021-10-07
猜你喜欢
  • 2021-06-18
  • 2021-11-14
  • 2021-05-29
  • 2021-10-10
  • 2021-12-19
  • 2022-01-11
相关资源
相似解决方案