cancel
Showing results for 
Search instead for 
Did you mean: 

Is EtherCat on STM32F207 and RMII (LAN8742) possible?

machinist
Associate III

I am currently starting to investigate the possibility to run the Ethercat natively (without sub processor) on an STM32F207 (running at 120 MHz) with RMII. It is supposed to be a motorcontrol application that also runns a 16 KHz control interrupt to regulate the velocity.

As I see it so far I am trying to implement two realtime applications that do not tollerate any time offset.

So simply asked: is it possible to do this (in C and not assembler)? Or is it generally done with a dedicated subprocessor.

5 REPLIES 5
T B
Associate II

EtherCat slave or master?

slave is difficult (impossible), because of the on the fly EtherCAT Communication

  • Process data is extracted and inserted on the fly
machinist
Associate III

Thanks for the replie. Its a slave.

AFAIK, this is correct.

You would need an ASIC from Beckoff, implementing the slave access point.

machinist
Associate III

Does anyone have experience with implementing ProfiNet directly on the STM32. It seems that it is based on standard TCP/IP.

My problem is just the 16 KHz control routine that musst run precisly and should rather not be interrupted for to long. I am not sure if this is even possible to run both the motorcontrol and the communication both in realtime on the same device. How is this generally solved? Is always a ASIC used (like the Beckhoff)?

Thanks!

Piranha
Chief II

Synchronization

PROFINET IRT uses the transparent clock mechanism to synchronize PROFINET IRT devices. The transparent clock mechanism is specified in IEEE 1588-2008 (1588 V2). This creates one control loop between the master clock and slave clocks.

STM32 ETH peripheral supports IEEE 1588-2008 and is able to output recovered clock. Although it's not a typical clock... Look for more details in reference manual. Also a timer can be connected to that clock. Most likely Your motor control clock would have to be somehow based on that clock.