AnsweredAssumed Answered

LPC4088  ETHERNET /w CMSIS MAC+PHY DRIVER

Question asked by Nayyar Hakeem-Habeeb on Dec 13, 2018
Latest reply on Jan 4, 2019 by jeremyzhou

Hello

 

my LPC board setup as an Ethernet transmitter is constantly sending out 0x55 (Ethernet preamble), I'm writing the frame to the transmit buffer using the in the CMSIS ethernet driver (see below). I observed this using Wireshark after capturing all traffic egressing from the Ethernet transmitter.

 

/* write frame to transmit buffer */
eth0_mac->SendFrame(ptr,64,ARM_ETH_MAC_EVENT_TX_FRAME);

 

The setup consists of x2 LPC4088 boards interconnected via ethernet cables. One set up as an Ethernet transmitter and the other as a receiver. I'm trying to establish only Layer-2 communication between the boards using CMSIS drivers PHY + MAC.

The transmitter seems to constantly send a stream 0x55 (ethernet preamble) every time the application makes a call to the above SendFrame function. This fills up the frame with 1370bytes of 0x55 only !!! The below register on both sides shows there is some communication. What would cause a constant stream of 0x55 to be transmitted?  any pointers please as to what might be happening???

 

Receiver Internal registers

MAC1 (crcen bit-4) = 00000003
MAC2 (crcen bit-4) = 000000B1
Receive Status register = 01C0055A <----bytes receieved (16-bits LSb)
Transmit Status register 0 = 00000000
Transmit Status register 1 = 00000000
COMMAND register = 00000643
STATUS register = 00000001

Transmitter Internal Registers

MAC1 (crcen bit-4) = 00000003
MAC2 (crcen bit-4) = 000000B1
Receive Status register = 00000000
Transmit Status register 0 = 0055A019
Transmit Status register 1 = 0000055A <----bytes transmitted  (16-bits LSb)
COMMAND register = 00000643
STATUS register = 00000001

Outcomes