ch32v307以太网问题

在移植LWIP的时候发现咱们库里面定义的最大ETH包长度是1536,但是根据注释计算是不对的,请问是怎么得到的1536这个值,如下图1734400978628.png

按照注释是1520。但为防止有某些不常用的字段会占用长度(比如VLAN标志会占用4字节,那么此时长度为1524)且因以太网底层接收是硬件处理,要保证字节对齐。有些mcu要求4字节对齐有些mcu要求16字节对齐,所以为了统一就直接设置成16字节地对齐,即这边定义为1536。


这样定义实际不会占用太多ram,如果ram资源紧张,可以改成4字节对齐,因为实际特殊字段用到的概率不大。如果没有其他特别需求,按照例程默认即可。

后续有其他问题可以邮件联系(邮箱:lq@wch.cn)


只有登录才能回复,可以选择微信账号登录