【发布时间】:2018-10-12 10:25:23
【问题描述】:
由于网络配置错误, 假设发生了广播包循环。
STM32 MCU 连续接收广播包。 结果,MCU负载增加。 在 STM32F746G-DISCOVERY 板上测试, MCU负载提升至70~80%。
在这种情况下,轮询周期被打破,并且 我们的产品无法正常工作。
除了使用带有 TCP/IP 协议栈的串口转以太网控制器, 有没有办法避免这个问题?
【问题讨论】:
由于网络配置错误, 假设发生了广播包循环。
STM32 MCU 连续接收广播包。 结果,MCU负载增加。 在 STM32F746G-DISCOVERY 板上测试, MCU负载提升至70~80%。
在这种情况下,轮询周期被打破,并且 我们的产品无法正常工作。
除了使用带有 TCP/IP 协议栈的串口转以太网控制器, 有没有办法避免这个问题?
【问题讨论】:
如果您检测到广播数据包泛滥,理论上您可以在 MAC 配置(STM32 内的以太网硬件)中暂时禁用接收广播数据包。 STM32 MCU 可以通过广播、组播、接收全部、发送方或接收到的硬件地址的哈希来过滤数据包。
【讨论】: