cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F429 with LAN8720A-CP and custom board, ethernet not working

julius
Associate II
Posted on November 02, 2016 at 09:57

Hi all,

I am trying to implement ethernet interface on my custom board. I've already do some test and there is some progress. First of all, I add these files for catch up you: my schematic (in attach), code (eth.c and .h files in  attach) and phy registers:

In main: 

  while(1)

 

   {

 

/* check if any packet received */

 

if (ETH_CheckFrameReceived())

 

{

 

 // process received ethernet packet

 

 LwIP_Pkt_Handle();

 

}

 

// handle periodic timers for LwIP

 

  LwIP_Periodic_Handle(HAL_GetTick());

 

   }

After configuration, I am reading these PHY reg values:

From Phy reg &sharp0

-Full duplex

-Speed: 10Mbps

From Phy reg &sharp1

 

- No T4 ability

- 100BASE-TX with full duplex

- 100BASE-TX with half duplex

- 10BASE-T with full duplex

- 10BASE-T with half duplex

- PHY not able to perform full duplex 100BASE-T2

- PHY not able to perform half duplex 100BASE-T2

- auto-negotiate process completed

- no remote fault

- able to perform auto-negotiation function

- link is up

I never get ETH_IRQn interrupt. 

I not see my dedicated IP adress on PC, and DHCP is not working (after dedicated time in code - 60 sec, static address is used). All lwpip and tcpip libraries are only adjusted to hal librariers.

I am using tplin rourter to indicate if I have any device connected, but I see only my pc connected. 

Any ideas here? 

Thanks for your time and answers.

#stm32f429-lan8720a-cp-ethernet
1 REPLY 1
julius
Associate II
Posted on November 03, 2016 at 07:39

Hi again, anyone can help me? I know it's hard to debug ethernet connection, but it's necessary for my project. 

I think its a software problem, because I see link up/down when i plug/unplug ethernet cable.

I can see, that in peripheral ETHERNET_DMA, register DAMFBOCR first 16 bits are changing value (most of times its it not reach more than 0x20) which indicates, that I am geting frames but missing, not taking them with my controller.

Thanks for answers!