2019-09-13 01:44 AM
I am trying to receive raw ethernet frames on my STM32F746G and i want to wait for their arrival and filter them by etherType.
In the reference manual only filtering by Source or Destination address is possible and i don't seem to understand where to put the address to filter.
Thanks
2019-09-13 02:00 AM
Yes, there's no ethertype filtering in hardware, you must do it in software.
Have you read the MAC filtering subchapter in the ETH chapter, and description of the related ETH_MACFFR, ETH_MACHTxR and ETH_MACAyxR registers?
JW
2019-09-14 01:55 AM
So you want your code to be stuck forever waiting for a frame which could never come? Now that's a "nice" device...
Learn asynchronous processing! Interrupt sets some flag, semaphore or something similar, which in turn triggers processing of new received frames in main code.
2019-09-16 02:15 AM
I implemented the HAL_ETH_GetReceivedFrame_IT, however it ony receives only the first frame and igonres the others. What seems to be the problem ?