STM32F427 Ethernet interface with KSZ8081 PHY chip
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2021-07-22 9:50 PM
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
- Labels:
-
Ethernet
-
STM32F4 Series
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2021-08-24 2:01 AM
Hello @PMohan ,
Can you please provide your initialization for further check?
Thanks in advance.
BeST Regards,
Walid
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2021-08-24 11:41 PM
Hardware : 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
- I am using Static IP
- MCO Clock is used
- Phy Address is 2
- Auto Negotiation Enabled
- Speed 100Mbps
- Full Duplex mode
- 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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2021-08-25 1:04 AM
Could you please provide the initialization code?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2021-08-25 4:30 AM
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
