cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F427 Ethernet interface with KSZ8081 PHY chip

PMohan
Associate II

Hi

I am using STM32F427 controller. I am using KSZ8081 Ethernet PHY Transceiver.

I have configured the controller for MII interface.

I have set the IP address and trying to ping the board from PC. There is no response.

How to check the controller configuration is working properly?

How to check the Ethernet chip is powered up?

Please let me know how to check this from hardware and software perspective

Thanks

4 REPLIES 4

Hello @PMohan​ ,

Can you please provide your initialization for further check?

Thanks in advance.

BeST Regards,

Walid

PMohan
Associate II

0693W00000DqIT2QAN.jpgHardware : I have attached the schematics of how the microcontroller is interfaced with the Ethernet PHY chip. Please go through and let me know for clarifications if any.

Software Configuration

  1. I am using Static IP
  2. MCO Clock is used
  3. Phy Address is 2
  4. Auto Negotiation Enabled
  5. Speed 100Mbps
  6. Full Duplex mode
  7. MII interface

I am not clear with MAC address configuration. I have configured MAC Address as 2.

If you need any other configuration parameters, please let me know.

Thanks

Priya

Could you please provide the initialization code?

PMohan
Associate II

Hi

1 Write_PHY_Reg( Phy_port, 0x1F, (RMII_CLK_SEL|HP_MDIX_SEL) );

2 RegValue = ( PHY_KSZ8081_REG_INTRPT_JABBER |

PHY_KSZ8081_REG_INTRPT_RXERR |

PHY_KSZ8081_REG_INTRPT_PGERR |

PHY_KSZ8081_REG_INTRPT_PRLFAULT |

PHY_KSZ8081_REG_INTRPT_LPACK |

PHY_KSZ8081_REG_INTRPT_LINKDOWN |

PHY_KSZ8081_REG_INTRPT_REM_FAULT |

PHY_KSZ8081_REG_INTRPT_LINKUP )

Write_PHY_Reg( Phy_port, 0x1B, &RegValue );

3 Write_PHY_Reg( Phy_port, 0x00, 0x1000 );

4 Read_PHY_Reg( Phy_port, reg_addr, &basic_status_value );

When reading the basic_status_value, it is 0x7849. The link is not established.

Let me know if your query is answered correctly.

Thanks

Priya