Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Weird problem with ethernet on FM3 MCU

Status
Not open for further replies.

OYTIS

Newbie level 3
Joined
Oct 22, 2014
Messages
3
Helped
1
Reputation
2
Reaction score
1
Trophy points
3
Activity points
21
Hello everyone!
I'm using Spansion FM3 series microcontroller (namely MB9BFD18T) to connect to ethernet using RMII interface (MII is also supported by the MCU). After long time of debugging I noticed that all my transmitted ethernet frames are exactly twice as short as they should be. Then I probed RMII Tx data pins with an oscilloscope and found out that every high nibble is lost, including the preamble. That is: if, for example I send
Code:
54 04 A6 6E DB 3E 00 00
what I see on RMII is:
Code:
44 6E BE 00
If it was MII/RMII issue, one would expect that every two (not four) bytes will be lost.
Any ideas? Maybe someone experienced similar problem?
 

Found out what the problem was. There is a bit (PS) in a register (MCR) which is always read as "0" and must always be written as "1". Therefore using compound assigment operators like
Code:
FM3_ETHERNET_MAC->MCR |= EMAC_MACCR_TE
breaks this convention resulting in such a strange behaviour.
Be very careful with compound assignment to registers!
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top