Hi friends I have designed a training board for LPC2368 and use KS8721BL as PHY. I wana use Keil EasyWeb for my board but it does not work(I can't PING my board)
This is what I have done: 1- Change "DP83848C_DEF_ADR 0x0100" to "DP83848C_DEF_ADR 0x0001" in EMAC.h 2- Change "DP83848C_ID 0x20005C90" to "DP83848C_ID 0x00221619" in EMAC.h 3- build project 4- write Hex file on flash
Should I do anything else...?
What's the PROBLEM ?
Thank you for your attention
Hi friends Thank you Hans and Andrew for your replies I'm familiar with debugging, but it's hard to debug PHY driver(EMAC driver) because its complex ! As you said my hardware's too different from the one that program was written for(my board likes OLIMEX_LPC2478_STK) but I find out that Ethernet PHY(KS8721 and DP83848) are same basically. If you see uTaskerV1.4_LPC-5 program in http://www.uTasker.com you'll find out that it's possible to use KS8721BL instead of DP83848 or vice versa with a little change
These are the changes to match the project to each chip (in app_hw_lpc23xx.h). #ifdef OLIMEX_LPC2378_STK // MICREL PHY KS8721
#define PHY_ADDRESS_ (0x01 << Mode) // address of PHY on OLIMEX LPC2378-STK (RMII mode)
#define PHY_IDENTIFIER 0x00221619 // MICREL identifier
#define PHY_MASK 0xfffffff0
#elif defined KEIL_MCB2300 // NATIONAL PHY DP83848
#define PHY_ADDRESS_ (0x01 << Cool // address of PHY on KEIL MCB2300 (RMII mode)
#define VNDR_MDL 0x09 // Vendor model number
#define MDL_REV 0x00 // Model revision number
#define PHY_IDENTIFIER (0x20005c00 | (VNDR_MDL<<4) | MDL_REV)// NATIONAL DP83848 dentifier
#endif
I applied this simple change to my code(PHY_IDENTIFIER & PHY_ADDRESS) but it does not work and I can not PING my board !? uTasker Code is suitable for both MCB2300 and olimex_LPC2378_STK and ethernet Interface with LPC are same in both Keil and Olimex. What do you think ? How can I change easyweb program to use it on my board ? Thank you for your attention