之前的ethercat概述在这推荐一位博主,个人觉得写的很细,文末还有书籍推荐:https://blog.youkuaiyun.com/chenweizhen1991/article/details/104840960
EtherCAT从站硬件分析
这里主要参考一篇博文,不过本人用的是LAN9252,可以再参考对应的开发手册就行:
https://blog.youkuaiyun.com/zhandouhu/article/details/102882356
EtherCAT从站控制芯片ESC是实现EtherCAT数据链路层协议的核心,它处理EtherCAT数据帧,并提供数据接口。
从站控制器通常都有一个内部的DPRAM,并提供存取这些应用内存的接口范围:
1)串行SPI(串行外围接口):主要用于数量较小的过程数据设备,如模拟量I/O模块、传感器、编码器和简单驱动等。该接口通常使用8位微控制器,如MCU芯片STM8/32、DSP等。(本人设计电机控制控制芯片选用了STM32F407,为此不使用SPI,用了可能不稳定)
2)8/16位微控制器并行接口与带有DPRAM接口的传统现场总线控制器接口相对应,尤其适用于数据量较大的复杂设备。(采用16位并行)
3)32位并行I/O接口可以连接多达32位数字输入/输出,而且也适用于简单的传感器或执行器的32位数据操作。这类设备无需主机CPU。
应用层控制器采用STM32处理器,它通过16位并口实现与LAN9252数据交换,并实现EtherCAT应用层协议。链路层电路的核心为LAN9252,它能处理EtherCAT数据帧,并为从站设备提供数据接口。晶振用于给LAN9252提供时钟信号,EEPROM用于存储从EtherCAT主站下载的配置信息。LAN9252芯片支持MII(介质独立接口)的以太网物理层PHY器件,本设计中,选用与LAN9252兼容的KS8721BL芯片作为PHY芯片。主站发来的数据,通过网络RJ45连到EtherCAT从站,经过H1102隔离变压芯片隔离变压后,经过KS8721BL芯片后到达LAN9252进行相应处理。