Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - miodrag

Pages: [1]
1
NXPTM M522XX, KINETIS and i.MX RT / Re: M52232 custom board
« on: May 22, 2008, 11:29:58 AM »
Hi Mark

I managed to trace the problem. Ethernet connector on my custom board was faulty.
Thanks for your help.

Regards
Miodrag.

2
NXPTM M522XX, KINETIS and i.MX RT / Re: M52232 custom board
« on: May 21, 2008, 01:51:40 PM »
Hi Mark

After using Wireshark I noticed that my computer sends ARP frames as expected, but no reply (or any other frame) is transmitted by M52232. Also, looks like no frames are received in _fec_rx_frame_isr(). After going trough code I noticed that MII speed is set to 0xd instead of 0xa (for 50MHz system clock).

I added in m5223x.h:
Code: [Select]
#define MII_SPEED_50MHZ    (0xa << 1)

and in app_hw_m5223x.c :

Code: [Select]
  #ifdef _M52232
    MSCR = (/*DIS_PREAMBLE*/ MII_SPEED_50MHZ);                             // set up MDC clock to 2.5MHz 
  #else
    MSCR = (/*DIS_PREAMBLE*/ MII_SPEED_60MHZ);                             // set up MDC clock to 2.5MHz
  #endif

Also, looking over the forums I noticed that people use 0x0 as EPHy address. I am not sure what this parameter is and what its value should be but I tried 0x0 and again, device failed to work properly.
Code: [Select]
#define PHY_ADDRESS 0x0

Do you have any idea what could be the problem with application (I am fairly sure hardware is correct).

Regards
Miodrag

3
NXPTM M522XX, KINETIS and i.MX RT / Re: M52232 custom board
« on: May 20, 2008, 11:23:08 AM »
Hi Mark

Thanks for your reply. Setting the LAN speed helped with LAN connection. I also disabled LOW POWER mode, but still can't ping the device from my computer. What should be set for ping to function properly? USE_ICMP is enabled in config.h
Code: [Select]
#define USE_ICMP                                                 // enable ICMP

#ifdef USE_ICMP                                                  // specify ICMP support details
  #define ICMP_PING                                            // allow PING reply
  #define ICMP_SEND_PING                                       // support PING transmission
  #define ICMP_DEST_UNREACHABLE                                // allow destination unreachable if no UDP port exists
#endif

Quote
Although almost certainly not a problem yet, ensure that the file system is specified to be smaller enough to fit in the first 128k of FLASH to avoid exceptions when the file system tries to work outside of the range.

How do you do this exactly? I couldn't find where it was defined.

Regards
Miodrag

4
NXPTM M522XX, KINETIS and i.MX RT / M52232 custom board
« on: May 19, 2008, 12:29:29 PM »
Hi All!

I have custom built board with M52232.
I am using P&E Micro USB Multilink for programming and debugging, uTasker SP7.0.

uTasker target : M52232EVB_ROM.

I changed following in uTasker:
-app_hw_m52232x.h :
Code: [Select]
#ifdef _M52232
      #define SIZE_OF_FLASH              (128*1024)
 #else
     #define SIZE_OF_FLASH              (256*1024)   
 #endif
.
.
.
#ifdef _M52232         
    #define PLL_MUL                        10                        // 50 MHz operation
#else       
    #define PLL_MUL                        12                        // 60MHz operation
#endif         
.
.
.
#define CONFIGURE_WATCHDOG         0

-config.h:
 disabled FTP, SMTP, POP3, HTTP, TELNET & DHCP.

-M52235EVB_FLASH.lcf
Code: [Select]
MEMORY
{
    flash1  (RX)   : ORIGIN = 0x00000000, LENGTH = 0x000400
    flashconfig   (RX)   : ORIGIN = 0x00000400, LENGTH = 0x00000018 
  //flash2  (RX)   : ORIGIN = 0x00000420, LENGTH = 0x003FBE0
    flash2  (RX)   : ORIGIN = 0x00000420, LENGTH = 0x001FBE0
    vectorram(RWX) : ORIGIN = 0x20000000, LENGTH = 0x00000400
    sram    (RWX)  : ORIGIN = 0x20000400, LENGTH = 0x00007C00
  //sram    (RWX)  : ORIGIN = 0x20000400, LENGTH = 0x00003C00 */  /* first tests with M52221 */
    ipsbar  (RWX)  : ORIGIN = 0x40000000, LENGTH = 0x0
}
.
.
.
__FLASH_SIZE = 0x00020000;


I have set default network setting and MAC address so that device can connect to my LAN:
Code: [Select]
static const NETWORK_PARAMETERS network_default = {
    (AUTO_NEGOTIATE | FULL_DUPLEX | RX_FLOW_CONTROL),                    // usNetworkOptions - see driver.h for other possibilities
    {0x00, 0x04, 0xA3, 0x00, 0x00, 0x01},                                // ucOurMAC - when no other value can be read from parameters this will be used
    { 192, 168, 164, 55 },                                                  // ucOurIP - our default IP address
    { 255, 255, 255, 0 },                                                // ucNetMask - Our default network mask
    { 192, 168, 164, 1 },                                                  // ucDefGW - Our default gateway
    { 192, 168, 164, 1 },                                                  // ucDNS_server - Our default DNS server
};

I also enabled LAN_REPORT_ACTIVITY.

With this setup I can write program to internal falsh and debug it (only 1 breakpoint !?). After initialization, application goes to fnDoLowPower. Nothing happens with ethernet (LEDs are off, and I can't ping device from my computer).

Can anyone help and tell me if I am doing the right thing with modifications?
I am trying to setup minimal application firts, so that I can move on to building full application.












Pages: [1]